about summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/compilers/circt/default.nix4
-rw-r--r--pkgs/development/compilers/erg/default.nix6
-rw-r--r--pkgs/development/compilers/fstar/default.nix4
-rw-r--r--pkgs/development/compilers/intel-graphics-compiler/default.nix13
-rw-r--r--pkgs/development/compilers/koka/default.nix63
-rw-r--r--pkgs/development/compilers/llvm/10/clang/compiler-rt-baremetal.patch53
-rw-r--r--pkgs/development/compilers/llvm/10/clang/default.nix133
-rw-r--r--pkgs/development/compilers/llvm/10/clang/gnu-install-dirs.patch248
-rw-r--r--pkgs/development/compilers/llvm/10/clang/purity.patch30
-rw-r--r--pkgs/development/compilers/llvm/10/compiler-rt/X86-support-extension.patch23
-rw-r--r--pkgs/development/compilers/llvm/10/compiler-rt/armv7l.patch32
-rw-r--r--pkgs/development/compilers/llvm/10/compiler-rt/default.nix134
-rw-r--r--pkgs/development/compilers/llvm/10/compiler-rt/find-darwin-sdk-version.patch62
-rw-r--r--pkgs/development/compilers/llvm/10/compiler-rt/gnu-install-dirs.patch129
-rw-r--r--pkgs/development/compilers/llvm/10/default.nix270
-rw-r--r--pkgs/development/compilers/llvm/10/libcxx/default.nix88
-rw-r--r--pkgs/development/compilers/llvm/10/libcxx/gnu-install-dirs.patch99
-rw-r--r--pkgs/development/compilers/llvm/10/libcxxabi/default.nix85
-rw-r--r--pkgs/development/compilers/llvm/10/libcxxabi/gnu-install-dirs.patch34
-rw-r--r--pkgs/development/compilers/llvm/10/libunwind/default.nix31
-rw-r--r--pkgs/development/compilers/llvm/10/libunwind/gnu-install-dirs.patch34
-rw-r--r--pkgs/development/compilers/llvm/10/lld/default.nix46
-rw-r--r--pkgs/development/compilers/llvm/10/lld/gnu-install-dirs.patch68
-rw-r--r--pkgs/development/compilers/llvm/10/lldb/gnu-install-dirs.patch91
-rw-r--r--pkgs/development/compilers/llvm/10/lldb/procfs.patch31
-rw-r--r--pkgs/development/compilers/llvm/10/llvm/default.nix355
-rw-r--r--pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs-polly.patch106
-rw-r--r--pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs.patch416
-rw-r--r--pkgs/development/compilers/llvm/10/openmp/default.nix37
-rw-r--r--pkgs/development/compilers/llvm/8/clang/HIP-use-PATH-8.patch80
-rw-r--r--pkgs/development/compilers/llvm/8/clang/compiler-rt-baremetal.patch53
-rw-r--r--pkgs/development/compilers/llvm/8/clang/default.nix145
-rw-r--r--pkgs/development/compilers/llvm/8/clang/gnu-install-dirs.patch290
-rw-r--r--pkgs/development/compilers/llvm/8/clang/static-pie.patch157
-rw-r--r--pkgs/development/compilers/llvm/8/clang/unwindlib.patch372
-rw-r--r--pkgs/development/compilers/llvm/8/clang/xpc.patch41
-rw-r--r--pkgs/development/compilers/llvm/8/compiler-rt/armv7l.patch38
-rw-r--r--pkgs/development/compilers/llvm/8/compiler-rt/crtbegin-and-end.patch595
-rw-r--r--pkgs/development/compilers/llvm/8/compiler-rt/default.nix117
-rw-r--r--pkgs/development/compilers/llvm/8/compiler-rt/gnu-install-dirs.patch117
-rw-r--r--pkgs/development/compilers/llvm/8/default.nix273
-rw-r--r--pkgs/development/compilers/llvm/8/libcxx/default.nix92
-rw-r--r--pkgs/development/compilers/llvm/8/libcxx/gnu-install-dirs.patch72
-rw-r--r--pkgs/development/compilers/llvm/8/libcxxabi/default.nix85
-rw-r--r--pkgs/development/compilers/llvm/8/libcxxabi/gnu-install-dirs.patch28
-rw-r--r--pkgs/development/compilers/llvm/8/libunwind/default.nix40
-rw-r--r--pkgs/development/compilers/llvm/8/libunwind/gnu-install-dirs.patch28
-rw-r--r--pkgs/development/compilers/llvm/8/lld/default.nix46
-rw-r--r--pkgs/development/compilers/llvm/8/lld/gnu-install-dirs.patch68
-rw-r--r--pkgs/development/compilers/llvm/8/lldb/default.nix109
-rw-r--r--pkgs/development/compilers/llvm/8/lldb/gnu-install-dirs.patch120
-rw-r--r--pkgs/development/compilers/llvm/8/lldb/lldb-gdb-remote-no-libcompress.patch30
-rw-r--r--pkgs/development/compilers/llvm/8/llvm/default.nix329
-rw-r--r--pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs-polly.patch106
-rw-r--r--pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs.patch394
-rw-r--r--pkgs/development/compilers/llvm/8/openmp/default.nix37
-rw-r--r--pkgs/development/compilers/nextpnr/default.nix92
-rw-r--r--pkgs/development/compilers/sbcl/2.x.nix201
-rw-r--r--pkgs/development/compilers/sbcl/bootstrap.nix29
-rw-r--r--pkgs/development/compilers/sbcl/fix-2.4.0-aarch64-darwin.patch39
-rw-r--r--pkgs/development/compilers/spirv-llvm-translator/default.nix10
-rw-r--r--pkgs/development/compilers/unison/default.nix6
-rw-r--r--pkgs/development/coq-modules/vscoq-language-server/default.nix32
-rw-r--r--pkgs/development/gnuradio-modules/ais/default.nix3
-rw-r--r--pkgs/development/gnuradio-modules/grnet/default.nix5
-rw-r--r--pkgs/development/gnuradio-modules/gsm/default.nix3
-rw-r--r--pkgs/development/gnuradio-modules/limesdr/default.nix3
-rw-r--r--pkgs/development/gnuradio-modules/mkDerivation.nix10
-rw-r--r--pkgs/development/gnuradio-modules/nacl/default.nix3
-rw-r--r--pkgs/development/gnuradio-modules/osmosdr/default.nix3
-rw-r--r--pkgs/development/gnuradio-modules/rds/default.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-darwin.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix17
-rw-r--r--pkgs/development/interpreters/elixir/1.16.nix4
-rw-r--r--pkgs/development/interpreters/j/default.nix88
-rw-r--r--pkgs/development/interpreters/lfe/2.1.nix6
-rw-r--r--pkgs/development/interpreters/lfe/generic-builder.nix5
-rw-r--r--pkgs/development/interpreters/php/8.1.nix12
-rw-r--r--pkgs/development/interpreters/python/python-packages-base.nix4
-rw-r--r--pkgs/development/interpreters/rakudo/moarvm.nix11
-rw-r--r--pkgs/development/interpreters/risor/default.nix6
-rw-r--r--pkgs/development/interpreters/spidermonkey/common.nix1
-rw-r--r--pkgs/development/interpreters/wasmtime/default.nix6
-rw-r--r--pkgs/development/libraries/abseil-cpp/202401.nix42
-rw-r--r--pkgs/development/libraries/agda/1lab/default.nix6
-rw-r--r--pkgs/development/libraries/bobcat/default.nix44
-rw-r--r--pkgs/development/libraries/catch2/3.nix2
-rw-r--r--pkgs/development/libraries/catch2/default.nix2
-rw-r--r--pkgs/development/libraries/cglm/default.nix4
-rw-r--r--pkgs/development/libraries/clap/default.nix14
-rw-r--r--pkgs/development/libraries/cmark/default.nix4
-rw-r--r--pkgs/development/libraries/crossguid/default.nix12
-rw-r--r--pkgs/development/libraries/entt/default.nix4
-rw-r--r--pkgs/development/libraries/example-robot-data/default.nix4
-rw-r--r--pkgs/development/libraries/faudio/default.nix4
-rw-r--r--pkgs/development/libraries/fbjni/default.nix8
-rw-r--r--pkgs/development/libraries/gdcm/default.nix4
-rw-r--r--pkgs/development/libraries/glfw/3.x.nix4
-rw-r--r--pkgs/development/libraries/httplib/default.nix4
-rw-r--r--pkgs/development/libraries/libbacktrace/default.nix6
-rw-r--r--pkgs/development/libraries/libcint/default.nix4
-rw-r--r--pkgs/development/libraries/libetpan/default.nix1
-rw-r--r--pkgs/development/libraries/libhwy/default.nix15
-rw-r--r--pkgs/development/libraries/libmilter/default.nix4
-rw-r--r--pkgs/development/libraries/libplacebo/default.nix3
-rw-r--r--pkgs/development/libraries/libredwg/default.nix9
-rw-r--r--pkgs/development/libraries/libucl/default.nix4
-rw-r--r--pkgs/development/libraries/libvirt/default.nix4
-rw-r--r--pkgs/development/libraries/mailcore2/default.nix23
-rw-r--r--pkgs/development/libraries/maplibre-gl-native/default.nix6
-rw-r--r--pkgs/development/libraries/md4c/default.nix67
-rw-r--r--pkgs/development/libraries/md4c/fix-pkgconfig.patch44
-rw-r--r--pkgs/development/libraries/ncnn/cmakelists.patch23
-rw-r--r--pkgs/development/libraries/ncnn/default.nix6
-rw-r--r--pkgs/development/libraries/openvdb/default.nix5
-rw-r--r--pkgs/development/libraries/openvino/cmake.patch31
-rw-r--r--pkgs/development/libraries/openvino/default.nix99
-rw-r--r--pkgs/development/libraries/protobuf/25.nix4
-rw-r--r--pkgs/development/libraries/qwlroots/default.nix69
-rw-r--r--pkgs/development/libraries/rapidfuzz-cpp/default.nix8
-rw-r--r--pkgs/development/libraries/redis-plus-plus/default.nix4
-rw-r--r--pkgs/development/libraries/rlottie/default.nix8
-rw-r--r--pkgs/development/libraries/rure/Cargo.lock4
-rw-r--r--pkgs/development/libraries/science/astronomy/indilib/default.nix4
-rw-r--r--pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix42
-rw-r--r--pkgs/development/libraries/science/networking/ns-3/default.nix2
-rw-r--r--pkgs/development/libraries/simdjson/default.nix4
-rw-r--r--pkgs/development/libraries/spglib/default.nix4
-rw-r--r--pkgs/development/libraries/sqlite/default.nix5
-rw-r--r--pkgs/development/libraries/talloc/default.nix4
-rw-r--r--pkgs/development/libraries/vigra/default.nix2
-rw-r--r--pkgs/development/libraries/wasilibc/default.nix4
-rw-r--r--pkgs/development/libraries/waylib/default.nix74
-rw-r--r--pkgs/development/libraries/xxHash/default.nix1
-rw-r--r--pkgs/development/misc/umr/default.nix44
-rw-r--r--pkgs/development/node-packages/aliases.nix3
-rw-r--r--pkgs/development/node-packages/main-programs.nix5
-rw-r--r--pkgs/development/node-packages/node-packages.json2
-rw-r--r--pkgs/development/node-packages/node-packages.nix261
-rw-r--r--pkgs/development/node-packages/overrides.nix17
-rw-r--r--pkgs/development/ocaml-modules/lambdapi/default.nix3
-rw-r--r--pkgs/development/ocaml-modules/riot/default.nix20
-rw-r--r--pkgs/development/ocaml-modules/timedesc/default.nix36
-rw-r--r--pkgs/development/ocaml-modules/timedesc/tzdb.nix15
-rw-r--r--pkgs/development/ocaml-modules/timedesc/tzlocal.nix16
-rw-r--r--pkgs/development/ocaml-modules/tiny_httpd/default.nix7
-rw-r--r--pkgs/development/ocaml-modules/zipc/default.nix4
-rw-r--r--pkgs/development/php-packages/php-cs-fixer/default.nix4
-rw-r--r--pkgs/development/python-modules/acquire/default.nix4
-rw-r--r--pkgs/development/python-modules/adafruit-platformdetect/default.nix4
-rw-r--r--pkgs/development/python-modules/adjusttext/default.nix16
-rw-r--r--pkgs/development/python-modules/aio-geojson-geonetnz-quakes/default.nix17
-rw-r--r--pkgs/development/python-modules/aio-geojson-usgs-earthquakes/default.nix17
-rw-r--r--pkgs/development/python-modules/aioelectricitymaps/default.nix17
-rw-r--r--pkgs/development/python-modules/aioftp/default.nix4
-rw-r--r--pkgs/development/python-modules/aioopenexchangerates/default.nix9
-rw-r--r--pkgs/development/python-modules/aioquic/default.nix6
-rw-r--r--pkgs/development/python-modules/aiortm/default.nix6
-rw-r--r--pkgs/development/python-modules/airthings-ble/default.nix4
-rw-r--r--pkgs/development/python-modules/alive-progress/default.nix19
-rw-r--r--pkgs/development/python-modules/aliyun-python-sdk-iot/default.nix4
-rw-r--r--pkgs/development/python-modules/ansible/default.nix4
-rw-r--r--pkgs/development/python-modules/anthropic/default.nix4
-rw-r--r--pkgs/development/python-modules/anywidget/default.nix4
-rw-r--r--pkgs/development/python-modules/aocd-example-parser/default.nix37
-rw-r--r--pkgs/development/python-modules/aocd/default.nix64
-rw-r--r--pkgs/development/python-modules/apache-beam/default.nix2
-rw-r--r--pkgs/development/python-modules/apprise/default.nix5
-rw-r--r--pkgs/development/python-modules/approvaltests/default.nix6
-rw-r--r--pkgs/development/python-modules/appthreat-vulnerability-db/default.nix10
-rw-r--r--pkgs/development/python-modules/asyncsleepiq/default.nix4
-rw-r--r--pkgs/development/python-modules/autofaiss/default.nix4
-rw-r--r--pkgs/development/python-modules/autopep8/default.nix1
-rw-r--r--pkgs/development/python-modules/aws-adfs/default.nix4
-rw-r--r--pkgs/development/python-modules/awsipranges/default.nix51
-rw-r--r--pkgs/development/python-modules/awswrangler/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-batch/default.nix21
-rw-r--r--pkgs/development/python-modules/azure-common/default.nix2
-rw-r--r--pkgs/development/python-modules/azure-mgmt-common/default.nix4
-rw-r--r--pkgs/development/python-modules/backports-zoneinfo/default.nix2
-rw-r--r--pkgs/development/python-modules/bip-utils/default.nix4
-rw-r--r--pkgs/development/python-modules/blebox-uniapi/default.nix4
-rw-r--r--pkgs/development/python-modules/boto3-stubs/default.nix4
-rw-r--r--pkgs/development/python-modules/botocore-stubs/default.nix4
-rw-r--r--pkgs/development/python-modules/branca/default.nix4
-rw-r--r--pkgs/development/python-modules/celery/default.nix6
-rw-r--r--pkgs/development/python-modules/censys/default.nix4
-rw-r--r--pkgs/development/python-modules/clarifai-grpc/default.nix4
-rw-r--r--pkgs/development/python-modules/clickhouse-connect/default.nix4
-rw-r--r--pkgs/development/python-modules/cryptodatahub/default.nix45
-rw-r--r--pkgs/development/python-modules/cryptolyzer/default.nix35
-rw-r--r--pkgs/development/python-modules/cryptoparser/default.nix11
-rw-r--r--pkgs/development/python-modules/cyclonedx-python-lib/default.nix4
-rw-r--r--pkgs/development/python-modules/daiquiri/default.nix4
-rw-r--r--pkgs/development/python-modules/deebot-client/default.nix84
-rw-r--r--pkgs/development/python-modules/dissect-cstruct/default.nix8
-rw-r--r--pkgs/development/python-modules/dissect-esedb/default.nix4
-rw-r--r--pkgs/development/python-modules/dissect-extfs/default.nix6
-rw-r--r--pkgs/development/python-modules/dissect-hypervisor/default.nix4
-rw-r--r--pkgs/development/python-modules/dissect-ntfs/default.nix6
-rw-r--r--pkgs/development/python-modules/dissect-target/default.nix13
-rw-r--r--pkgs/development/python-modules/dissect-util/default.nix4
-rw-r--r--pkgs/development/python-modules/dissect-volume/default.nix4
-rw-r--r--pkgs/development/python-modules/dissect-xfs/default.nix4
-rw-r--r--pkgs/development/python-modules/dissect/default.nix4
-rw-r--r--pkgs/development/python-modules/distutils-cfg/default.nix2
-rw-r--r--pkgs/development/python-modules/django-cleanup/default.nix4
-rw-r--r--pkgs/development/python-modules/django-crispy-bootstrap5/default.nix42
-rw-r--r--pkgs/development/python-modules/django-reversion/default.nix4
-rw-r--r--pkgs/development/python-modules/dploot/default.nix48
-rw-r--r--pkgs/development/python-modules/dulwich/default.nix2
-rw-r--r--pkgs/development/python-modules/dvc-objects/default.nix4
-rw-r--r--pkgs/development/python-modules/dvc/default.nix4
-rw-r--r--pkgs/development/python-modules/emoji/default.nix4
-rw-r--r--pkgs/development/python-modules/es-client/default.nix12
-rw-r--r--pkgs/development/python-modules/fingerprints/default.nix19
-rw-r--r--pkgs/development/python-modules/fontparts/default.nix4
-rw-r--r--pkgs/development/python-modules/frigidaire/default.nix15
-rw-r--r--pkgs/development/python-modules/fuse-python/default.nix4
-rw-r--r--pkgs/development/python-modules/gehomesdk/default.nix11
-rw-r--r--pkgs/development/python-modules/gentools/default.nix4
-rw-r--r--pkgs/development/python-modules/georss-client/default.nix16
-rw-r--r--pkgs/development/python-modules/georss-ingv-centro-nazionale-terremoti-client/default.nix14
-rw-r--r--pkgs/development/python-modules/git-annex-adapter/default.nix51
-rw-r--r--pkgs/development/python-modules/githubkit/default.nix4
-rw-r--r--pkgs/development/python-modules/gitlike-commands/default.nix14
-rw-r--r--pkgs/development/python-modules/glean-parser/default.nix6
-rw-r--r--pkgs/development/python-modules/glfw/default.nix4
-rw-r--r--pkgs/development/python-modules/google-ai-generativelanguage/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-asset/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-datacatalog/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-dataproc/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-monitoring/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-redis/default.nix11
-rw-r--r--pkgs/development/python-modules/google-cloud-tasks/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-texttospeech/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-trace/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-videointelligence/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-websecurityscanner/default.nix4
-rw-r--r--pkgs/development/python-modules/govee-ble/default.nix18
-rw-r--r--pkgs/development/python-modules/gpaw/default.nix4
-rw-r--r--pkgs/development/python-modules/griffe/default.nix4
-rw-r--r--pkgs/development/python-modules/grpcio-health-checking/default.nix4
-rw-r--r--pkgs/development/python-modules/grpcio-reflection/default.nix4
-rw-r--r--pkgs/development/python-modules/gruut-ipa/default.nix2
-rw-r--r--pkgs/development/python-modules/gtimelog/default.nix60
-rw-r--r--pkgs/development/python-modules/gurobipy/linux.nix2
-rw-r--r--pkgs/development/python-modules/hahomematic/default.nix4
-rw-r--r--pkgs/development/python-modules/hg-commitsigs/default.nix4
-rw-r--r--pkgs/development/python-modules/hwi/default.nix4
-rw-r--r--pkgs/development/python-modules/iminuit/default.nix4
-rw-r--r--pkgs/development/python-modules/influxdb-client/default.nix4
-rw-r--r--pkgs/development/python-modules/ipwhois/default.nix6
-rw-r--r--pkgs/development/python-modules/jq/jq-py-setup.patch111
-rw-r--r--pkgs/development/python-modules/json-stream-rs-tokenizer/default.nix9
-rw-r--r--pkgs/development/python-modules/jsonargparse/default.nix4
-rw-r--r--pkgs/development/python-modules/jupyter-book/default.nix28
-rw-r--r--pkgs/development/python-modules/kaa-base/default.nix10
-rw-r--r--pkgs/development/python-modules/kaa-metadata/default.nix10
-rw-r--r--pkgs/development/python-modules/keyring-pass/default.nix78
-rw-r--r--pkgs/development/python-modules/langchain-community/default.nix4
-rw-r--r--pkgs/development/python-modules/langchain-core/default.nix4
-rw-r--r--pkgs/development/python-modules/ldfparser/default.nix4
-rw-r--r--pkgs/development/python-modules/libknot/default.nix4
-rw-r--r--pkgs/development/python-modules/libvirt/default.nix4
-rw-r--r--pkgs/development/python-modules/litellm/default.nix4
-rw-r--r--pkgs/development/python-modules/losant-rest/default.nix4
-rw-r--r--pkgs/development/python-modules/maestral/default.nix2
-rw-r--r--pkgs/development/python-modules/meep/default.nix2
-rw-r--r--pkgs/development/python-modules/meshtastic/default.nix4
-rw-r--r--pkgs/development/python-modules/mkdocs-material/default.nix4
-rw-r--r--pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix4
-rw-r--r--pkgs/development/python-modules/mpi4py/default.nix6
-rw-r--r--pkgs/development/python-modules/myjwt/default.nix12
-rw-r--r--pkgs/development/python-modules/napari-npe2/default.nix2
-rw-r--r--pkgs/development/python-modules/neo4j/default.nix4
-rw-r--r--pkgs/development/python-modules/nibabel/default.nix12
-rw-r--r--pkgs/development/python-modules/nipreps-versions/default.nix46
-rw-r--r--pkgs/development/python-modules/niworkflows/default.nix101
-rw-r--r--pkgs/development/python-modules/nose2/default.nix11
-rw-r--r--pkgs/development/python-modules/oelint-parser/default.nix10
-rw-r--r--pkgs/development/python-modules/opower/default.nix4
-rw-r--r--pkgs/development/python-modules/oras/default.nix4
-rw-r--r--pkgs/development/python-modules/pglast/default.nix4
-rw-r--r--pkgs/development/python-modules/pipenv-poetry-migrate/default.nix4
-rw-r--r--pkgs/development/python-modules/pmdarima/default.nix2
-rw-r--r--pkgs/development/python-modules/posthog/default.nix4
-rw-r--r--pkgs/development/python-modules/preshed/default.nix4
-rw-r--r--pkgs/development/python-modules/publicsuffixlist/default.nix4
-rw-r--r--pkgs/development/python-modules/py-sonic/default.nix4
-rw-r--r--pkgs/development/python-modules/pycaption/default.nix8
-rw-r--r--pkgs/development/python-modules/pyemvue/default.nix48
-rw-r--r--pkgs/development/python-modules/pyenphase/default.nix4
-rw-r--r--pkgs/development/python-modules/pyfireservicerota/default.nix22
-rw-r--r--pkgs/development/python-modules/pyformlang/default.nix4
-rw-r--r--pkgs/development/python-modules/pygit2/default.nix14
-rw-r--r--pkgs/development/python-modules/pygls/default.nix4
-rw-r--r--pkgs/development/python-modules/pygmo/default.nix2
-rw-r--r--pkgs/development/python-modules/pygmt/default.nix4
-rw-r--r--pkgs/development/python-modules/pylgnetcast/default.nix4
-rw-r--r--pkgs/development/python-modules/pylutron-caseta/default.nix25
-rw-r--r--pkgs/development/python-modules/pylutron/default.nix4
-rw-r--r--pkgs/development/python-modules/pymatting/01-kdtree-signature.patch13
-rw-r--r--pkgs/development/python-modules/pymatting/default.nix17
-rw-r--r--pkgs/development/python-modules/pysnmplib/default.nix4
-rw-r--r--pkgs/development/python-modules/pytedee-async/default.nix4
-rw-r--r--pkgs/development/python-modules/pytest-django/default.nix2
-rw-r--r--pkgs/development/python-modules/python-docs-theme/default.nix4
-rw-r--r--pkgs/development/python-modules/python-kasa/default.nix4
-rw-r--r--pkgs/development/python-modules/pytrafikverket/default.nix4
-rw-r--r--pkgs/development/python-modules/pywfa/default.nix2
-rw-r--r--pkgs/development/python-modules/qcodes/default.nix4
-rw-r--r--pkgs/development/python-modules/qdrant-client/default.nix4
-rw-r--r--pkgs/development/python-modules/rdkit/default.nix6
-rw-r--r--pkgs/development/python-modules/recipe-scrapers/default.nix4
-rw-r--r--pkgs/development/python-modules/reconplogger/default.nix4
-rw-r--r--pkgs/development/python-modules/recursive-pth-loader/default.nix2
-rw-r--r--pkgs/development/python-modules/regenmaschine/default.nix4
-rw-r--r--pkgs/development/python-modules/reptor/default.nix4
-rw-r--r--pkgs/development/python-modules/requests-pkcs12/default.nix4
-rw-r--r--pkgs/development/python-modules/rich-pixels/default.nix9
-rw-r--r--pkgs/development/python-modules/ring-doorbell/default.nix4
-rw-r--r--pkgs/development/python-modules/robotframework-databaselibrary/default.nix22
-rw-r--r--pkgs/development/python-modules/robotframework-excellib/default.nix39
-rw-r--r--pkgs/development/python-modules/robotframework-seleniumlibrary/default.nix21
-rw-r--r--pkgs/development/python-modules/robotframework/default.nix32
-rw-r--r--pkgs/development/python-modules/robotstatuschecker/default.nix26
-rw-r--r--pkgs/development/python-modules/rokuecp/default.nix4
-rw-r--r--pkgs/development/python-modules/safetensors/default.nix11
-rw-r--r--pkgs/development/python-modules/sagemaker/default.nix4
-rw-r--r--pkgs/development/python-modules/scmrepo/default.nix4
-rw-r--r--pkgs/development/python-modules/scs/default.nix13
-rw-r--r--pkgs/development/python-modules/seaborn/default.nix4
-rw-r--r--pkgs/development/python-modules/selenium/default.nix2
-rw-r--r--pkgs/development/python-modules/sharp-aquos-rc/default.nix36
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-confluencebuilder/default.nix4
-rw-r--r--pkgs/development/python-modules/stdlibs/default.nix4
-rw-r--r--pkgs/development/python-modules/subarulink/default.nix4
-rw-r--r--pkgs/development/python-modules/svg-py/default.nix49
-rw-r--r--pkgs/development/python-modules/svgutils/default.nix40
-rw-r--r--pkgs/development/python-modules/tables/default.nix17
-rw-r--r--pkgs/development/python-modules/tcxreader/default.nix5
-rw-r--r--pkgs/development/python-modules/templateflow/default.nix45
-rw-r--r--pkgs/development/python-modules/tensordict/default.nix4
-rw-r--r--pkgs/development/python-modules/tesla-fleet-api/default.nix45
-rw-r--r--pkgs/development/python-modules/tilequant/default.nix9
-rw-r--r--pkgs/development/python-modules/torchrl/default.nix18
-rw-r--r--pkgs/development/python-modules/transformers/default.nix4
-rw-r--r--pkgs/development/python-modules/trimesh/default.nix4
-rw-r--r--pkgs/development/python-modules/types-aiobotocore/default.nix4
-rw-r--r--pkgs/development/python-modules/types-docutils/default.nix4
-rw-r--r--pkgs/development/python-modules/types-markdown/default.nix4
-rw-r--r--pkgs/development/python-modules/types-protobuf/default.nix4
-rw-r--r--pkgs/development/python-modules/types-psycopg2/default.nix4
-rw-r--r--pkgs/development/python-modules/types-pyopenssl/default.nix4
-rw-r--r--pkgs/development/python-modules/types-setuptools/default.nix4
-rw-r--r--pkgs/development/python-modules/uamqp/default.nix12
-rw-r--r--pkgs/development/python-modules/xdoctest/default.nix4
-rw-r--r--pkgs/development/python-modules/xiaomi-ble/default.nix4
-rw-r--r--pkgs/development/python-modules/yalexs/default.nix4
-rw-r--r--pkgs/development/python-modules/ytmusicapi/default.nix4
-rw-r--r--pkgs/development/python-modules/zcbor/default.nix4
-rw-r--r--pkgs/development/python-modules/zigpy-znp/default.nix2
-rw-r--r--pkgs/development/python2-modules/pygtk/default.nix4
-rw-r--r--pkgs/development/r-modules/default.nix2
-rw-r--r--pkgs/development/ruby-modules/gem-config/default.nix10
-rw-r--r--pkgs/development/tools/allure/default.nix4
-rw-r--r--pkgs/development/tools/analysis/checkov/default.nix4
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix4
-rw-r--r--pkgs/development/tools/analysis/frama-c/default.nix2
-rw-r--r--pkgs/development/tools/analysis/snyk/default.nix6
-rw-r--r--pkgs/development/tools/api-linter/default.nix14
-rw-r--r--pkgs/development/tools/azcopy/default.nix4
-rw-r--r--pkgs/development/tools/bearer/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/gup/default.nix9
-rw-r--r--pkgs/development/tools/build-managers/moon/default.nix6
-rw-r--r--pkgs/development/tools/buildah/default.nix4
-rw-r--r--pkgs/development/tools/buildkit/default.nix4
-rw-r--r--pkgs/development/tools/capnproto-java/default.nix4
-rw-r--r--pkgs/development/tools/check-jsonschema/default.nix6
-rw-r--r--pkgs/development/tools/cloudsmith-cli/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/buildbot/master.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/buildbot/pkg.nix2
-rw-r--r--pkgs/development/tools/continuous-integration/buildbot/plugins.nix42
-rw-r--r--pkgs/development/tools/continuous-integration/buildbot/worker.nix2
-rw-r--r--pkgs/development/tools/continuous-integration/cirrus-cli/default.nix6
-rw-r--r--pkgs/development/tools/continuous-integration/jenkins/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix6
-rw-r--r--pkgs/development/tools/continuous-integration/woodpecker/common.nix21
-rw-r--r--pkgs/development/tools/continuous-integration/woodpecker/frontend.nix57
-rw-r--r--pkgs/development/tools/continuous-integration/woodpecker/server.nix8
-rwxr-xr-xpkgs/development/tools/continuous-integration/woodpecker/update.sh25
-rw-r--r--pkgs/development/tools/continuous-integration/woodpecker/woodpecker-package.json77
-rw-r--r--pkgs/development/tools/continuous-integration/woodpecker/yarn.lock3219
-rw-r--r--pkgs/development/tools/database/clickhouse-backup/default.nix4
-rw-r--r--pkgs/development/tools/database/pgweb/default.nix4
-rw-r--r--pkgs/development/tools/database/sqlite-web/default.nix4
-rw-r--r--pkgs/development/tools/detekt/default.nix4
-rw-r--r--pkgs/development/tools/documentation/antora/default.nix6
-rw-r--r--pkgs/development/tools/earthly/default.nix6
-rw-r--r--pkgs/development/tools/esbuild/default.nix4
-rw-r--r--pkgs/development/tools/faas-cli/default.nix4
-rw-r--r--pkgs/development/tools/fable/default.nix4
-rw-r--r--pkgs/development/tools/glslviewer/default.nix1
-rw-r--r--pkgs/development/tools/go-containerregistry/default.nix4
-rw-r--r--pkgs/development/tools/goimports-reviser/default.nix4
-rw-r--r--pkgs/development/tools/golines/default.nix6
-rw-r--r--pkgs/development/tools/gptcommit/default.nix6
-rw-r--r--pkgs/development/tools/gqlgenc/default.nix4
-rw-r--r--pkgs/development/tools/grpc-gateway/default.nix6
-rw-r--r--pkgs/development/tools/hcloud/default.nix6
-rw-r--r--pkgs/development/tools/jaq/default.nix6
-rw-r--r--pkgs/development/tools/jira-cli-go/default.nix4
-rw-r--r--pkgs/development/tools/k6/default.nix4
-rw-r--r--pkgs/development/tools/kdash/default.nix6
-rw-r--r--pkgs/development/tools/kube-linter/default.nix6
-rw-r--r--pkgs/development/tools/language-servers/beancount-language-server/default.nix12
-rw-r--r--pkgs/development/tools/language-servers/jq-lsp/default.nix21
-rw-r--r--pkgs/development/tools/language-servers/ruff-lsp/default.nix4
-rw-r--r--pkgs/development/tools/metal-cli/default.nix6
-rw-r--r--pkgs/development/tools/minizinc/ide.nix26
-rw-r--r--pkgs/development/tools/misc/act/default.nix6
-rw-r--r--pkgs/development/tools/misc/devspace/default.nix4
-rw-r--r--pkgs/development/tools/misc/edb/default.nix10
-rw-r--r--pkgs/development/tools/misc/kool/default.nix6
-rw-r--r--pkgs/development/tools/misc/n98-magerun2/default.nix4
-rw-r--r--pkgs/development/tools/misc/opengrok/default.nix4
-rw-r--r--pkgs/development/tools/misc/runme/default.nix4
-rw-r--r--pkgs/development/tools/misc/slint-lsp/default.nix6
-rw-r--r--pkgs/development/tools/misc/strace/default.nix8
-rw-r--r--pkgs/development/tools/misc/texlab/default.nix6
-rw-r--r--pkgs/development/tools/mysql-shell/innovation.nix12
-rw-r--r--pkgs/development/tools/oh-my-posh/default.nix4
-rw-r--r--pkgs/development/tools/okteto/default.nix6
-rw-r--r--pkgs/development/tools/open-policy-agent/default.nix4
-rw-r--r--pkgs/development/tools/packer/default.nix6
-rw-r--r--pkgs/development/tools/postiats-utilities/default.nix2
-rw-r--r--pkgs/development/tools/protoc-gen-go-vtproto/default.nix6
-rw-r--r--pkgs/development/tools/pscale/default.nix6
-rw-r--r--pkgs/development/tools/purescript/spago/default.nix3
-rw-r--r--pkgs/development/tools/refurb/default.nix4
-rw-r--r--pkgs/development/tools/reindeer/default.nix8
-rw-r--r--pkgs/development/tools/rover/default.nix17
-rw-r--r--pkgs/development/tools/rover/schema/etag.id1
-rw-r--r--pkgs/development/tools/rover/schema/hash.id1
-rw-r--r--pkgs/development/tools/rover/schema/schema.graphql1980
-rwxr-xr-xpkgs/development/tools/rover/update.sh24
-rw-r--r--pkgs/development/tools/rust/cargo-binstall/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-bisect-rustc/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-component/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-dist/default.nix9
-rw-r--r--pkgs/development/tools/rust/cargo-license/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-make/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-zigbuild/default.nix6
-rw-r--r--pkgs/development/tools/rust/rust-analyzer/default.nix6
-rw-r--r--pkgs/development/tools/sentry-cli/default.nix6
-rw-r--r--pkgs/development/tools/skopeo/default.nix4
-rw-r--r--pkgs/development/tools/snazy/default.nix6
-rw-r--r--pkgs/development/tools/sqlboiler/default.nix6
-rw-r--r--pkgs/development/tools/supabase-cli/default.nix6
-rw-r--r--pkgs/development/tools/symfony-cli/default.nix4
-rw-r--r--pkgs/development/tools/the-way/default.nix6
-rw-r--r--pkgs/development/tools/turso-cli/default.nix4
-rw-r--r--pkgs/development/tools/twilio-cli/default.nix4
-rw-r--r--pkgs/development/tools/uftrace/default.nix4
-rw-r--r--pkgs/development/tools/vultr-cli/default.nix6
-rw-r--r--pkgs/development/tools/yj/default.nix24
-rw-r--r--pkgs/development/tools/zed/default.nix6
-rw-r--r--pkgs/development/web/deno/default.nix6
-rw-r--r--pkgs/development/web/deno/librusty_v8.nix10
-rw-r--r--pkgs/development/web/flyctl/default.nix6
-rw-r--r--pkgs/development/web/function-runner/default.nix6
-rw-r--r--pkgs/development/web/grails/default.nix4
-rw-r--r--pkgs/development/web/minify/default.nix6
474 files changed, 2741 insertions, 14120 deletions
diff --git a/pkgs/development/compilers/circt/default.nix b/pkgs/development/compilers/circt/default.nix
index 6f83e9960ddc..dfda406ab9b6 100644
--- a/pkgs/development/compilers/circt/default.nix
+++ b/pkgs/development/compilers/circt/default.nix
@@ -17,12 +17,12 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "circt";
-  version = "1.63.0";
+  version = "1.64.0";
   src = fetchFromGitHub {
     owner = "llvm";
     repo = "circt";
     rev = "firtool-${version}";
-    sha256 = "sha256-ln56E66AHga80TkeiVd3A3WobdTe1UnE7o5t6+tmR0Q=";
+    sha256 = "sha256-tZ8IQa01hYVJZdUKPd0rMGfAScuhZPzpwP51WWXERGw=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/compilers/erg/default.nix b/pkgs/development/compilers/erg/default.nix
index e012957fb7a9..5183a8712d2a 100644
--- a/pkgs/development/compilers/erg/default.nix
+++ b/pkgs/development/compilers/erg/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "erg";
-  version = "0.6.28";
+  version = "0.6.29";
 
   src = fetchFromGitHub {
     owner = "erg-lang";
     repo = "erg";
     rev = "v${version}";
-    hash = "sha256-TK7Ak6ZKjEBcwimV0W/CgD3yd9q1aSgSkp9MuGE3d8k=";
+    hash = "sha256-sHW0e8a8ZDmcA8u0leIJLxzJLI8guKlMB/u7CFhbyQE=";
   };
 
-  cargoHash = "sha256-DD6RXGdkQHMKZCJhHRTbTrRQ15MdOZHbREJ31LePHUY=";
+  cargoHash = "sha256-3wrH++IItJQNueJoa5wuzN2ZXWa5OflBItjQxS/XhO0=";
 
   nativeBuildInputs = [
     makeWrapper
diff --git a/pkgs/development/compilers/fstar/default.nix b/pkgs/development/compilers/fstar/default.nix
index 773a0dde281f..3b3ad0ff5569 100644
--- a/pkgs/development/compilers/fstar/default.nix
+++ b/pkgs/development/compilers/fstar/default.nix
@@ -12,13 +12,13 @@
 
 let
 
-  version = "2023.09.03";
+  version = "2024.01.13";
 
   src = fetchFromGitHub {
     owner = "FStarLang";
     repo = "FStar";
     rev = "v${version}";
-    hash = "sha256-ymoP5DvaLdrdwJcnhZnLEvwNxUFzhkICajPyK4lvacc=";
+    hash = "sha256-xjSWDP8mSjLcn+0hsRpEdzsBgBR+mKCZB8yLmHl+WqE=";
   };
 
   fstar-dune = ocamlPackages.callPackage ./dune.nix { inherit version src; };
diff --git a/pkgs/development/compilers/intel-graphics-compiler/default.nix b/pkgs/development/compilers/intel-graphics-compiler/default.nix
index db03d2d85ca2..54a8e82e27ee 100644
--- a/pkgs/development/compilers/intel-graphics-compiler/default.nix
+++ b/pkgs/development/compilers/intel-graphics-compiler/default.nix
@@ -5,6 +5,7 @@
 , runCommandLocal
 , bison
 , flex
+, intel-compute-runtime
 , llvmPackages_14
 , opencl-clang
 , python3
@@ -19,8 +20,8 @@ let
   vc_intrinsics_src = fetchFromGitHub {
     owner = "intel";
     repo = "vc-intrinsics";
-    rev = "v0.13.0";
-    hash = "sha256-A9G1PH0WGdxU2u/ODrou53qF9kvrmE0tJSl9cFIOus0=";
+    rev = "v0.14.0";
+    hash = "sha256-t7m2y+DiZf0xum1vneXvoCyH767SKMOq4YzMIuZngR8=";
   };
 
   inherit (llvmPackages_14) lld llvm;
@@ -30,13 +31,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "intel-graphics-compiler";
-  version = "1.0.15136.4";
+  version = "1.0.15610.11";
 
   src = fetchFromGitHub {
     owner = "intel";
     repo = "intel-graphics-compiler";
     rev = "igc-${version}";
-    hash = "sha256-Qh3FNck1z+rr7eSqxVnNs7YKvgXpKGY5dd3yx1Ft9Mg=";
+    hash = "sha256-Fu1g5M2lpcnLw6aSHI5gx47VOfx+rIdIhBlwe/Dv8bk=";
   };
 
   nativeBuildInputs = [ bison cmake flex (python3.withPackages (ps : with ps; [ mako ])) ];
@@ -73,6 +74,10 @@ stdenv.mkDerivation rec {
     "-Wno-dev"
   ];
 
+  passthru.tests = {
+    inherit intel-compute-runtime;
+  };
+
   meta = with lib; {
     homepage = "https://github.com/intel/intel-graphics-compiler";
     description = "LLVM-based compiler for OpenCL targeting Intel Gen graphics hardware";
diff --git a/pkgs/development/compilers/koka/default.nix b/pkgs/development/compilers/koka/default.nix
index aec856e47d68..e3462c826c76 100644
--- a/pkgs/development/compilers/koka/default.nix
+++ b/pkgs/development/compilers/koka/default.nix
@@ -1,15 +1,42 @@
-{ stdenv, pkgsHostTarget, cmake, makeWrapper, mkDerivation, fetchFromGitHub
-, alex, array, base, bytestring, cond, containers, directory, extra
-, filepath, hpack, hspec, hspec-core, isocline, json, lib, mtl
-, parsec, process, regex-compat, text, time }:
+{ stdenv
+, pkgsHostTarget
+, cmake
+, makeWrapper
+, mkDerivation
+, fetchFromGitHub
+, alex
+, lib
+, hpack
+, aeson
+, array
+, async
+, base
+, bytestring
+, co-log-core
+, cond
+, containers
+, directory
+, FloatingHex
+, isocline
+, lens
+, lsp
+, mtl
+, network
+, network-simple
+, parsec
+, process
+, text
+, text-rope
+, time
+}:
 
 let
-  version = "2.4.2";
+  version = "3.0.4";
   src = fetchFromGitHub {
     owner = "koka-lang";
     repo = "koka";
     rev = "v${version}";
-    sha256 = "sha256-sVjaIzOxNuBtDswpDl5gLB10Sw945TQAf2ywrKumqqk=";
+    sha256 = "sha256-U8BW1Aq9t3je0YDV8NkE0MzdnjwXBJQbmekh5ufOs3k=";
     fetchSubmodules = true;
   };
   kklib = stdenv.mkDerivation {
@@ -38,8 +65,28 @@ mkDerivation rec {
   isExecutable = true;
   libraryToolDepends = [ hpack ];
   executableHaskellDepends = [
-    array base bytestring cond containers directory isocline mtl
-    parsec process text time kklib
+    aeson
+    array
+    async
+    base
+    bytestring
+    co-log-core
+    cond
+    containers
+    directory
+    FloatingHex
+    isocline
+    lens
+    lsp
+    mtl
+    network
+    network-simple
+    parsec
+    process
+    text
+    text-rope
+    time
+    kklib
   ];
   executableToolDepends = [ alex makeWrapper ];
   postInstall = ''
diff --git a/pkgs/development/compilers/llvm/10/clang/compiler-rt-baremetal.patch b/pkgs/development/compilers/llvm/10/clang/compiler-rt-baremetal.patch
deleted file mode 100644
index a4a0f21b0fcd..000000000000
--- a/pkgs/development/compilers/llvm/10/clang/compiler-rt-baremetal.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-Index: lib/Driver/ToolChains/BareMetal.cpp
-===================================================================
---- a/lib/Driver/ToolChains/BareMetal.cpp
-+++ b/lib/Driver/ToolChains/BareMetal.cpp
-@@ -157,7 +157,7 @@
- void BareMetal::AddLinkRuntimeLib(const ArgList &Args,
-                                   ArgStringList &CmdArgs) const {
-   CmdArgs.push_back(Args.MakeArgString("-lclang_rt.builtins-" +
--                                       getTriple().getArchName() + ".a"));
-+                                       getTriple().getArchName()));
- }
- 
- void baremetal::Linker::ConstructJob(Compilation &C, const JobAction &JA,
-Index: test/Driver/baremetal.cpp
-===================================================================
---- a/test/Driver/baremetal.cpp
-+++ b/test/Driver/baremetal.cpp
-@@ -13,7 +13,7 @@
- // CHECK-V6M-C-NEXT: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
- // CHECK-V6M-C-SAME: "-L[[RESOURCE_DIR:[^"]+]]{{[/\\]+}}lib{{[/\\]+}}baremetal"
- // CHECK-V6M-C-SAME: "-T" "semihosted.lds" "-Lsome{{[/\\]+}}directory{{[/\\]+}}user{{[/\\]+}}asked{{[/\\]+}}for"
--// CHECK-V6M-C-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
-+// CHECK-V6M-C-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
- // CHECK-V6M-C-SAME: "-o" "{{.*}}.o"
- 
- // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
-@@ -35,7 +35,7 @@
- // CHECK-V6M-DEFAULTCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
- // CHECK-V6M-DEFAULTCXX-SAME: "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
- // CHECK-V6M-DEFAULTCXX-SAME: "-lc++" "-lc++abi" "-lunwind"
--// CHECK-V6M-DEFAULTCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
-+// CHECK-V6M-DEFAULTCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
- // CHECK-V6M-DEFAULTCXX-SAME: "-o" "{{.*}}.o"
- 
- // RUN: %clangxx -no-canonical-prefixes %s -### -o %t.o 2>&1 \
-@@ -48,7 +48,7 @@
- // CHECK-V6M-LIBCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
- // CHECK-V6M-LIBCXX-SAME: "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
- // CHECK-V6M-LIBCXX-SAME: "-lc++" "-lc++abi" "-lunwind"
--// CHECK-V6M-LIBCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
-+// CHECK-V6M-LIBCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
- // CHECK-V6M-LIBCXX-SAME: "-o" "{{.*}}.o"
- 
- // RUN: %clangxx -no-canonical-prefixes %s -### -o %t.o 2>&1 \
-@@ -61,7 +61,7 @@
- // CHECK-V6M-LIBSTDCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
- // CHECK-V6M-LIBSTDCXX-SAME: "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
- // CHECK-V6M-LIBSTDCXX-SAME: "-lstdc++" "-lsupc++" "-lunwind"
--// CHECK-V6M-LIBSTDCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
-+// CHECK-V6M-LIBSTDCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
- // CHECK-V6M-LIBSTDCXX-SAME: "-o" "{{.*}}.o"
- 
- // RUN: %clangxx -no-canonical-prefixes %s -### -o %t.o 2>&1 \
diff --git a/pkgs/development/compilers/llvm/10/clang/default.nix b/pkgs/development/compilers/llvm/10/clang/default.nix
deleted file mode 100644
index ad4e91304158..000000000000
--- a/pkgs/development/compilers/llvm/10/clang/default.nix
+++ /dev/null
@@ -1,133 +0,0 @@
-{ lib, stdenv, llvm_meta, fetch, substituteAll, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3
-, buildLlvmTools
-, fixDarwinDylibNames
-, enableManpages ? false
-}:
-
-let
-  self = stdenv.mkDerivation ({
-    pname = "clang";
-    inherit version;
-
-    src = fetch "clang" "091bvcny2lh32zy8f3m9viayyhb2zannrndni7325rl85cwgr6pr";
-
-    unpackPhase = ''
-      unpackFile $src
-      mv clang-${version}* clang
-      sourceRoot=$PWD/clang
-      unpackFile ${clang-tools-extra_src}
-      mv clang-tools-extra-* $sourceRoot/tools/extra
-    '';
-
-    nativeBuildInputs = [ cmake python3 ]
-      ++ lib.optional enableManpages python3.pkgs.sphinx
-      ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
-
-    buildInputs = [ libxml2 libllvm ];
-
-    cmakeFlags = [
-      "-DCLANGD_BUILD_XPC=OFF"
-      "-DLLVM_ENABLE_RTTI=ON"
-    ] ++ 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
-      (substituteAll {
-        src = ../../clang-6-10-LLVMgold-path.patch;
-        libllvmLibdir = "${libllvm.lib}/lib";
-      })
-    ];
-
-    postPatch = ''
-      sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \
-             -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' \
-             lib/Driver/ToolChains/*.cpp
-    '' + lib.optionalString stdenv.hostPlatform.isMusl ''
-      sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp
-    '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
-      substituteInPlace tools/extra/clangd/CMakeLists.txt \
-        --replace "NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB" FALSE
-    '';
-
-    outputs = [ "out" "lib" "dev" "python" ];
-
-    postInstall = ''
-      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,scan-view}
-      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
-      mv $out/share/scan-view/*.py $python/share/scan-view
-      rm $out/bin/c-index-test
-      patchShebangs $python/bin
-
-      mkdir -p $dev/bin
-      cp bin/clang-tblgen $dev/bin
-    '';
-
-    passthru = {
-      inherit libllvm;
-      isClang = true;
-      hardeningUnsupportedFlags = [ "fortify3" ];
-    };
-
-    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.
-      '';
-      mainProgram = "clang";
-    };
-  } // 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/pkgs/development/compilers/llvm/10/clang/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/10/clang/gnu-install-dirs.patch
deleted file mode 100644
index 454c81875eab..000000000000
--- a/pkgs/development/compilers/llvm/10/clang/gnu-install-dirs.patch
+++ /dev/null
@@ -1,248 +0,0 @@
-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/pkgs/development/compilers/llvm/10/clang/purity.patch b/pkgs/development/compilers/llvm/10/clang/purity.patch
deleted file mode 100644
index a6729a9b004e..000000000000
--- a/pkgs/development/compilers/llvm/10/clang/purity.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-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
-@@ -494,13 +494,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) {
--      const std::string Loader =
--          D.DyldPrefix + ToolChain.getDynamicLinker(Args);
--      CmdArgs.push_back("-dynamic-linker");
--      CmdArgs.push_back(Args.MakeArgString(Loader));
--    }
-   }
- 
-   CmdArgs.push_back("-o");
--- 
-2.11.0
-
diff --git a/pkgs/development/compilers/llvm/10/compiler-rt/X86-support-extension.patch b/pkgs/development/compilers/llvm/10/compiler-rt/X86-support-extension.patch
deleted file mode 100644
index f6f9336ad5ad..000000000000
--- a/pkgs/development/compilers/llvm/10/compiler-rt/X86-support-extension.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-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/pkgs/development/compilers/llvm/10/compiler-rt/armv7l.patch b/pkgs/development/compilers/llvm/10/compiler-rt/armv7l.patch
deleted file mode 100644
index 120cfe6feb2a..000000000000
--- a/pkgs/development/compilers/llvm/10/compiler-rt/armv7l.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-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/pkgs/development/compilers/llvm/10/compiler-rt/default.nix b/pkgs/development/compilers/llvm/10/compiler-rt/default.nix
deleted file mode 100644
index f4f5c6b56437..000000000000
--- a/pkgs/development/compilers/llvm/10/compiler-rt/default.nix
+++ /dev/null
@@ -1,134 +0,0 @@
-{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, libllvm, libcxxabi, libxcrypt
-, doFakeLibgcc ? stdenv.hostPlatform.isFreeBSD
-}:
-
-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;
-  src = fetch "compiler-rt" "1yjqjri753w0fzmxcyz687nvd97sbc9rsqrxzpq720na47hwh3fr";
-
-  nativeBuildInputs = [ cmake python3 libllvm.dev ];
-  buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
-
-  env.NIX_CFLAGS_COMPILE = toString [
-    "-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 (haveLibc && stdenv.hostPlatform.isGnu) [
-    "-DSANITIZER_COMMON_CFLAGS=-I${libxcrypt}/include"
-  ] ++ lib.optionals (useLLVM || bareMetal || isMusl) [
-    "-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
-    "-DCOMPILER_RT_BUILD_XRAY=OFF"
-    "-DCOMPILER_RT_BUILD_LIBFUZZER=OFF"
-  ] ++ lib.optionals (useLLVM || bareMetal) [
-    "-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) [
-    "-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 = [
-    ../../common/compiler-rt/7-12-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
-    ../../common/compiler-rt/libsanitizer-no-cyclades-11.patch
-    ./X86-support-extension.patch # backported from LLVM 11
-    # Fix build on armv6l
-    ../../common/compiler-rt/armv6-mcr-dmb.patch
-    ../../common/compiler-rt/armv6-sync-ops-no-thumb.patch
-    ../../common/compiler-rt/armv6-no-ldrexd-strexd.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)'
-    substituteInPlace cmake/config-ix.cmake \
-      --replace 'set(X86 i386)' 'set(X86 i386 i486 i586 i686)'
-  '' + lib.optionalString stdenv.isDarwin ''
-    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>" ""
-  '';
-
-  preConfigure = lib.optionalString (useLLVM && !haveLibc) ''
-    cmakeFlagsArray+=(-DCMAKE_C_FLAGS="-nodefaultlibs -ffreestanding")
-  '';
-
-  # 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-*.o $out/lib/crtbeginS.o
-    ln -s $out/lib/*/clang_rt.crtend-*.o $out/lib/crtendS.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
-  ''
-  # See https://reviews.llvm.org/D37278 for why android exception
-  + lib.optionalString (stdenv.hostPlatform.isx86_32 && !stdenv.hostPlatform.isAndroid) ''
-    for f in $out/lib/*/*builtins-i?86*; do
-      ln -s "$f" $(echo "$f" | sed -e 's/builtins-i.86/builtins-i386/')
-    done
-  '' + lib.optionalString doFakeLibgcc ''
-    ln -s $out/lib/freebsd/libclang_rt.builtins-*.a $out/lib/libgcc.a
-  '';
-
-  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 ];
-    broken = stdenv.hostPlatform.system == "aarch64-darwin"
-      # compiler-rt requires a Clang stdenv on 32-bit RISC-V:
-      # https://reviews.llvm.org/D43106#1019077
-      || (stdenv.hostPlatform.isRiscV32 && !stdenv.cc.isClang);
-  };
-}
diff --git a/pkgs/development/compilers/llvm/10/compiler-rt/find-darwin-sdk-version.patch b/pkgs/development/compilers/llvm/10/compiler-rt/find-darwin-sdk-version.patch
deleted file mode 100644
index fc16ddda76b7..000000000000
--- a/pkgs/development/compilers/llvm/10/compiler-rt/find-darwin-sdk-version.patch
+++ /dev/null
@@ -1,62 +0,0 @@
---- a/cmake/Modules/CompilerRTDarwinUtils.cmake	2020-01-25 23:13:55.000000000 +0100
-+++ b/cmake/Modules/CompilerRTDarwinUtils.cmake	2020-01-25 23:19:37.000000000 +0100
-@@ -43,41 +43,6 @@
-   set(DARWIN_${sdk_name}_CACHED_SYSROOT ${var_internal} CACHE STRING "Darwin SDK path for SDK ${sdk_name}." FORCE)
- endfunction()
- 
--function(find_darwin_sdk_version var sdk_name)
--  # We deliberately don't cache the result here because
--  # CMake's caching causes too many problems.
--  set(result_process 1)
--  if(NOT DARWIN_PREFER_PUBLIC_SDK)
--    # Let's first try the internal SDK, otherwise use the public SDK.
--    execute_process(
--      COMMAND xcrun --sdk ${sdk_name}.internal --show-sdk-version
--      RESULT_VARIABLE result_process
--      OUTPUT_VARIABLE var_internal
--      OUTPUT_STRIP_TRAILING_WHITESPACE
--      ERROR_FILE /dev/null
--    )
--  endif()
--  if((NOT ${result_process} EQUAL 0) OR "" STREQUAL "${var_internal}")
--    execute_process(
--      COMMAND xcrun --sdk ${sdk_name} --show-sdk-version
--      RESULT_VARIABLE result_process
--      OUTPUT_VARIABLE var_internal
--      OUTPUT_STRIP_TRAILING_WHITESPACE
--      ERROR_FILE /dev/null
--    )
--  endif()
--  if(NOT result_process EQUAL 0)
--    message(FATAL_ERROR
--      "Failed to determine SDK version for \"${sdk_name}\" SDK")
--  endif()
--  # Check reported version looks sane.
--  if (NOT "${var_internal}" MATCHES "^[0-9]+\\.[0-9]+(\\.[0-9]+)?$")
--    message(FATAL_ERROR
--      "Reported SDK version \"${var_internal}\" does not look like a version")
--  endif()
--  set(${var} ${var_internal} PARENT_SCOPE)
--endfunction()
--
- # There isn't a clear mapping of what architectures are supported with a given
- # target platform, but ld's version output does list the architectures it can
- # link for.
-@@ -119,17 +84,6 @@
-     foreach(flag ${DARWIN_${os}_LINK_FLAGS})
-       set(os_linker_flags "${os_linker_flags} ${flag}")
-     endforeach()
--
--    # Disable building for i386 for macOS SDK >= 10.15. The SDK doesn't support
--    # linking for i386 and the corresponding OS doesn't allow running macOS i386
--    # binaries.
--    if ("${os}" STREQUAL "osx")
--      find_darwin_sdk_version(macosx_sdk_version "macosx")
--      if ("${macosx_sdk_version}" VERSION_GREATER 10.15 OR "${macosx_sdk_version}" VERSION_EQUAL 10.15)
--        message(STATUS "Disabling i386 slice for ${valid_archs}")
--        list(REMOVE_ITEM archs "i386")
--      endif()
--    endif()
-   endif()
- 
-   # The simple program will build for x86_64h on the simulator because it is 
diff --git a/pkgs/development/compilers/llvm/10/compiler-rt/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/10/compiler-rt/gnu-install-dirs.patch
deleted file mode 100644
index db0bd006eaf2..000000000000
--- a/pkgs/development/compilers/llvm/10/compiler-rt/gnu-install-dirs.patch
+++ /dev/null
@@ -1,129 +0,0 @@
-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/pkgs/development/compilers/llvm/10/default.nix b/pkgs/development/compilers/llvm/10/default.nix
deleted file mode 100644
index 16238221e279..000000000000
--- a/pkgs/development/compilers/llvm/10/default.nix
+++ /dev/null
@@ -1,270 +0,0 @@
-{ lowPrio, newScope, pkgs, lib, stdenv, cmake
-, preLibcCrossHeaders
-, libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith
-, buildLlvmTools # tools, but from the previous stage, for cross
-, targetLlvmLibraries # libraries, but from the next stage, for cross
-, targetLlvm
-# This is the default binutils, but with *this* version of LLD rather
-# than the default LLVM version'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
-  release_version = "10.0.1";
-  version = release_version; # differentiating these (variables) is important for RCs
-
-  fetch = name: sha256: fetchurl {
-    url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-${release_version}/${name}-${version}.src.tar.xz";
-    inherit sha256;
-  };
-
-  clang-tools-extra_src = fetch "clang-tools-extra" "06n1yp638rh24xdxv9v2df0qajxbjz4w59b7dd4ky36drwmpi4yh";
-
-  inherit (import ../common/common-let.nix { inherit lib release_version; }) llvm_meta;
-
-  tools = lib.makeExtensible (tools: let
-    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}/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 `outputSpecified` to get the expected behavior e.g. of lib.get*
-    llvm = tools.libllvm;
-
-    libclang = callPackage ./clang {
-      inherit clang-tools-extra_src llvm_meta;
-    };
-
-    clang-unwrapped = tools.libclang;
-
-    # 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
-    # });
-
-    # pick clang appropriate for package set we are targeting
-    clang =
-      /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc
-      else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM
-      else if (pkgs.targetPackages.stdenv or 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 = [
-        libcxx.cxxabi
-        targetLlvmLibraries.compiler-rt
-      ];
-      extraBuildCommands = mkExtraBuildCommands cc;
-    };
-
-    lld = callPackage ./lld {
-      inherit llvm_meta;
-    };
-
-    lldb = callPackage ../common/lldb.nix {
-      src = fetch "lldb" "051p5b04y6z3g730rmc2n2v71lipbw7k69riww3a6sl74myfiaq7";
-      patches = [
-        ./lldb/procfs.patch
-        ./lldb/gnu-install-dirs.patch
-      ];
-      inherit llvm_meta;
-    };
-
-    # 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 ../common/bintools.nix { };
-
-    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 = [
-        libcxx.cxxabi
-        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
-        echo "-L${targetLlvmLibraries.libunwind}/lib" >> $out/nix-support/cc-ldflags
-      '' + 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 fetch; });
-  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 targetLlvm;
-    };
-  });
-  noExtend = extensible: lib.attrsets.removeAttrs extensible [ "extend" ];
-
-in { inherit tools libraries release_version; } // (noExtend libraries) // (noExtend tools)
diff --git a/pkgs/development/compilers/llvm/10/libcxx/default.nix b/pkgs/development/compilers/llvm/10/libcxx/default.nix
deleted file mode 100644
index cc029ea657cd..000000000000
--- a/pkgs/development/compilers/llvm/10/libcxx/default.nix
+++ /dev/null
@@ -1,88 +0,0 @@
-{ lib, stdenv, llvm_meta, fetch, cmake, python3, fixDarwinDylibNames, version
-, cxxabi ? if stdenv.hostPlatform.isFreeBSD then libcxxrt else libcxxabi
-, libcxxabi, libcxxrt
-, enableShared ? !stdenv.hostPlatform.isStatic
-}:
-
-assert stdenv.isDarwin -> cxxabi.pname == "libcxxabi";
-
-stdenv.mkDerivation {
-  pname = "libcxx";
-  inherit version;
-
-  src = fetch "libcxx" "0v78bfr6h2zifvdqnj2wlfk4pvxzrqn3hg1v6lqk3y12bx9p9xny";
-
-  postUnpack = ''
-    unpackFile ${libcxxabi.src}
-    export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
-  '';
-
-  outputs = [ "out" "dev" ];
-
-  patches = [
-    ./gnu-install-dirs.patch
-  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
-    ../../libcxx-0001-musl-hacks.patch
-  ];
-
-  # Prevent errors like "error: 'foo' is unavailable: introduced in macOS yy.zz"
-  postPatch = ''
-    substituteInPlace include/__config \
-      --replace "#    define _LIBCPP_USE_AVAILABILITY_APPLE" ""
-  '';
-
-  preConfigure = ''
-    # Get headers from the cxxabi source so we can see private headers not installed by the cxxabi package
-    cmakeFlagsArray=($cmakeFlagsArray -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$LIBCXXABI_INCLUDE_DIR")
-  '' + lib.optionalString stdenv.hostPlatform.isMusl ''
-    patchShebangs utils/cat_files.py
-  '';
-  nativeBuildInputs = [ cmake ]
-    ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) python3
-    ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
-
-  buildInputs = [ cxxabi ];
-
-  cmakeFlags = [
-    "-DLIBCXX_LIBCPPABI_VERSION=2"
-    "-DLIBCXX_CXX_ABI=${cxxabi.pname}"
-  ] ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1"
-    ++ lib.optional (cxxabi.pname == "libcxxabi") "-DLIBCXX_LIBCXXABI_LIB_PATH=${cxxabi}/lib"
-    ++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON"
-    ++ lib.optionals stdenv.hostPlatform.isWasm [
-      "-DLIBCXX_ENABLE_THREADS=OFF"
-      "-DLIBCXX_ENABLE_FILESYSTEM=OFF"
-      "-DLIBCXX_ENABLE_EXCEPTIONS=OFF"
-    ] ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF";
-
-  preInstall = lib.optionalString (stdenv.isDarwin) ''
-    for file in lib/*.dylib; do
-      if [ -L "$file" ]; then continue; fi
-
-      baseName=$(basename $(${stdenv.cc.targetPrefix}otool -D $file | tail -n 1))
-      installName="$out/lib/$baseName"
-      abiName=$(echo "$baseName" | sed -e 's/libc++/libc++abi/')
-
-      for other in $(${stdenv.cc.targetPrefix}otool -L $file | awk '$1 ~ "/libc\\+\\+abi" { print $1 }'); do
-        ${stdenv.cc.targetPrefix}install_name_tool -change $other ${cxxabi}/lib/$abiName $file
-      done
-    done
-  '';
-
-  passthru = {
-    isLLVM = true;
-    inherit cxxabi;
-  };
-
-  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/pkgs/development/compilers/llvm/10/libcxx/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/10/libcxx/gnu-install-dirs.patch
deleted file mode 100644
index 4b031e90bdd5..000000000000
--- a/pkgs/development/compilers/llvm/10/libcxx/gnu-install-dirs.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-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/pkgs/development/compilers/llvm/10/libcxxabi/default.nix b/pkgs/development/compilers/llvm/10/libcxxabi/default.nix
deleted file mode 100644
index c4eba56a6b81..000000000000
--- a/pkgs/development/compilers/llvm/10/libcxxabi/default.nix
+++ /dev/null
@@ -1,85 +0,0 @@
-{ lib, stdenv, llvm_meta, cmake, fetch, libcxx, libunwind, llvm, version
-, enableShared ? !stdenv.hostPlatform.isStatic
-}:
-
-stdenv.mkDerivation {
-  pname = "libcxxabi";
-  inherit version;
-
-  src = fetch "libcxxabi" "0yqs722y76cwvmfsq0lb917r9m3fci7bf5z3yzl71yz9n88ghzm9";
-
-  outputs = [ "out" "dev" ];
-
-  postUnpack = ''
-    unpackFile ${libcxx.src}
-    unpackFile ${llvm.src}
-    cmakeFlags+=" -DLLVM_PATH=$PWD/$(ls -d llvm-*) -DLIBCXXABI_LIBCXX_PATH=$PWD/$(ls -d libcxx-*)"
-  '' + lib.optionalString stdenv.isDarwin ''
-    export TRIPLE=x86_64-apple-darwin
-  '' + lib.optionalString stdenv.hostPlatform.isMusl ''
-    patch -p1 -d $(ls -d libcxx-*) -i ${../../libcxx-0001-musl-hacks.patch}
-  '' + lib.optionalString stdenv.hostPlatform.isWasm ''
-    patch -p1 -d $(ls -d llvm-*) -i ${../../common/libcxxabi/wasm.patch}
-  '';
-
-  patches = [
-    ../../common/libcxxabi/no-threads.patch
-    ./gnu-install-dirs.patch
-  ];
-
-  nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optional (!stdenv.isDarwin && !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"
-  ];
-
-  preInstall = lib.optionalString stdenv.isDarwin ''
-    for file in lib/*.dylib; do
-      if [ -L "$file" ]; then continue; fi
-
-      # Fix up the install name. Preserve the basename, just replace the path.
-      installName="$out/lib/$(basename $(${stdenv.cc.targetPrefix}otool -D $file | tail -n 1))"
-
-      # 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
-      ${stdenv.cc.targetPrefix}install_name_tool -id $installName $file
-
-      # cc-wrapper passes '-lc++abi' to all c++ link steps, but that causes
-      # libcxxabi to sometimes link against a different version of itself.
-      # Here we simply make that second reference point to ourselves.
-      for other in $(${stdenv.cc.targetPrefix}otool -L $file | awk '$1 ~ "/libc\\+\\+abi" { print $1 }'); do
-        ${stdenv.cc.targetPrefix}install_name_tool -change $other $installName $file
-      done
-    done
-  '';
-
-  postInstall = ''
-    mkdir -p "$dev/include"
-    install -m 644 ../include/${if stdenv.isDarwin then "*" else "cxxabi.h"} "$dev/include"
-  '';
-
-  passthru = {
-    libName = "c++abi";
-  };
-
-  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/pkgs/development/compilers/llvm/10/libcxxabi/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/10/libcxxabi/gnu-install-dirs.patch
deleted file mode 100644
index 0f80ade7c389..000000000000
--- a/pkgs/development/compilers/llvm/10/libcxxabi/gnu-install-dirs.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-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/pkgs/development/compilers/llvm/10/libunwind/default.nix b/pkgs/development/compilers/llvm/10/libunwind/default.nix
deleted file mode 100644
index 2941dca35bf6..000000000000
--- a/pkgs/development/compilers/llvm/10/libunwind/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ lib, stdenv, llvm_meta, version, fetch, cmake, enableShared ? !stdenv.hostPlatform.isStatic
-}:
-
-stdenv.mkDerivation rec {
-  pname = "libunwind";
-  inherit version;
-
-  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/pkgs/development/compilers/llvm/10/libunwind/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/10/libunwind/gnu-install-dirs.patch
deleted file mode 100644
index 8cea7d3e3341..000000000000
--- a/pkgs/development/compilers/llvm/10/libunwind/gnu-install-dirs.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-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/pkgs/development/compilers/llvm/10/lld/default.nix b/pkgs/development/compilers/llvm/10/lld/default.nix
deleted file mode 100644
index d4c686a0f4db..000000000000
--- a/pkgs/development/compilers/llvm/10/lld/default.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-{ lib, stdenv, llvm_meta
-, buildLlvmTools
-, fetch
-, cmake
-, libxml2
-, libllvm
-, version
-}:
-
-stdenv.mkDerivation rec {
-  pname = "lld";
-  inherit version;
-
-  src = fetch pname "0ynzi35r4fckvp6842alpd43qr810j3728yfslc66fk2mbh4j52r";
-
-  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"
-  ];
-
-  # Musl's default stack size is too small for lld to be able to link Firefox.
-  LDFLAGS = lib.optionalString stdenv.hostPlatform.isMusl "-Wl,-z,stack-size=2097152";
-
-  outputs = [ "out" "lib" "dev" ];
-
-  meta = llvm_meta // {
-    homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker (unwrapped)";
-    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/pkgs/development/compilers/llvm/10/lld/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/10/lld/gnu-install-dirs.patch
deleted file mode 100644
index 232f5cbac9dd..000000000000
--- a/pkgs/development/compilers/llvm/10/lld/gnu-install-dirs.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-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/pkgs/development/compilers/llvm/10/lldb/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/10/lldb/gnu-install-dirs.patch
deleted file mode 100644
index 0a7539db5e6b..000000000000
--- a/pkgs/development/compilers/llvm/10/lldb/gnu-install-dirs.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-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/cmake/modules/LLDBStandalone.cmake b/cmake/modules/LLDBStandalone.cmake
-index 752113b..010f187 100644
---- a/cmake/modules/LLDBStandalone.cmake
-+++ b/cmake/modules/LLDBStandalone.cmake
-@@ -62,7 +62,7 @@ endif()
-
- # They are used as destination of target generators.
- set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
--set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
-+set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
- if(WIN32 OR CYGWIN)
-   # DLL platform -- put DLLs into bin.
-   set(LLVM_SHLIB_OUTPUT_INTDIR ${LLVM_RUNTIME_OUTPUT_INTDIR})
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index bf74802..1c98cae 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -222,7 +222,7 @@ if (LLDB_ENABLE_PYTHON)
-   if(LLDB_BUILD_FRAMEWORK)
-     set(LLDB_PYTHON_INSTALL_PATH ${LLDB_FRAMEWORK_INSTALL_DIR}/LLDB.framework/Resources/Python)
-   else()
--    set(LLDB_PYTHON_INSTALL_PATH ${LLDB_PYTHON_RELATIVE_PATH})
-+    set(LLDB_PYTHON_INSTALL_PATH ${CMAKE_INSTALL_LIBDIR}/../${LLDB_PYTHON_RELATIVE_PATH})
-   endif()
-   if (NOT CMAKE_CFG_INTDIR STREQUAL  ".")
-     string(REPLACE ${CMAKE_CFG_INTDIR} "\$\{CMAKE_INSTALL_CONFIG_NAME\}" LLDB_PYTHON_INSTALL_PATH ${LLDB_PYTHON_INSTALL_PATH})
diff --git a/pkgs/development/compilers/llvm/10/lldb/procfs.patch b/pkgs/development/compilers/llvm/10/lldb/procfs.patch
deleted file mode 100644
index b075dbaeee0a..000000000000
--- a/pkgs/development/compilers/llvm/10/lldb/procfs.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- 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/pkgs/development/compilers/llvm/10/llvm/default.nix b/pkgs/development/compilers/llvm/10/llvm/default.nix
deleted file mode 100644
index 534d38e86663..000000000000
--- a/pkgs/development/compilers/llvm/10/llvm/default.nix
+++ /dev/null
@@ -1,355 +0,0 @@
-{ lib, stdenv, llvm_meta
-, pkgsBuildBuild
-, fetch
-, fetchpatch
-, cmake
-, python3
-, libffi
-, enableGoldPlugin ? libbfd.hasPluginAPI
-, libbfd
-, libpfm
-, libxml2
-, ncurses
-, version
-, release_version
-, zlib
-, buildLlvmTools
-, debugVersion ? false
-, doCheck ? stdenv.isLinux && (!stdenv.isx86_32)
-  && (stdenv.hostPlatform == stdenv.buildPlatform)
-, enableManpages ? false
-, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
-# broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
-# broken for the armv7l builder
-, enablePFM ? stdenv.isLinux && !stdenv.hostPlatform.isAarch
-, enablePolly ? true
-}:
-
-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));
-
-  # Ordinarily we would just the `doCheck` and `checkDeps` functionality
-  # `mkDerivation` gives us to manage our test dependencies (instead of breaking
-  # out `doCheck` as a package level attribute).
-  #
-  # Unfortunately `lit` does not forward `$PYTHONPATH` to children processes, in
-  # particular the children it uses to do feature detection.
-  #
-  # This means that python deps we add to `checkDeps` (which the python
-  # interpreter is made aware of via `$PYTHONPATH` – populated by the python
-  # setup hook) are not picked up by `lit` which causes it to skip tests.
-  #
-  # Adding `python3.withPackages (ps: [ ... ])` to `checkDeps` also doesn't work
-  # because this package is shadowed in `$PATH` by the regular `python3`
-  # package.
-  #
-  # So, we "manually" assemble one python derivation for the package to depend
-  # on, taking into account whether checks are enabled or not:
-  python = if doCheck then
-    let
-      checkDeps = ps: with ps; [ psutil ];
-    in python3.withPackages checkDeps
-  else python3;
-
-in stdenv.mkDerivation (rec {
-  pname = "llvm";
-  inherit version;
-
-  src = fetch pname "1wydhbp9kyjp5y0rc627imxgkgqiv3dfirbqil9dgpnbaw5y7n65";
-  polly_src = fetch "polly" "0nm2d8niz47yjsa3r17v3p13b70igkd338ib8191znr1dfw0pyyj";
-
-  unpackPhase = ''
-    unpackFile $src
-    mv llvm-${version}* llvm
-    sourceRoot=$PWD/llvm
-  '' + optionalString enablePolly ''
-    unpackFile $polly_src
-    mv polly-* $sourceRoot/tools/polly
-  '';
-
-  outputs = [ "out" "lib" "dev" "python" ];
-
-  nativeBuildInputs = [ cmake python ]
-    ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
-
-  buildInputs = [ libxml2 libffi ]
-    ++ optional enablePFM libpfm; # exegesis
-
-  propagatedBuildInputs = [ ncurses zlib ];
-
-  patches = [
-    # When cross-compiling we configure llvm-config-native with an approximation
-    # of the flags used for the normal LLVM build. To avoid the need for building
-    # a native libLLVM.so (which would fail) we force llvm-config to be linked
-    # statically against the necessary LLVM components always.
-    ../../llvm-config-link-static.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;
-    })
-
-    # Fix missing includes for GCC 11
-    (fetchpatch {
-      name = "headers-gcc-11.patch";
-      url = "https://github.com/llvm/llvm-project/commit/b498303066a63a203d24f739b2d2e0e56dca70d1.patch";
-      sha256 = "0nh123kld0dgz2h941lng331dkj3wbm5lfxm375k1f569gv83hlk";
-      stripLen = 1;
-    })
-
-    # Fix invalid std::string(nullptr) for GCC 12
-    (fetchpatch {
-      name = "nvptx-gcc-12.patch";
-      url = "https://github.com/llvm/llvm-project/commit/99e64623ec9b31def9375753491cc6093c831809.patch";
-      sha256 = "0zjfjgavqzi2ypqwqnlvy6flyvdz8hi1anwv0ybwnm2zqixg7za3";
-      stripLen = 1;
-    })
-    (fetchpatch {
-      name = "dfaemitter-gcc-12.patch";
-      url = "https://github.com/llvm/llvm-project/commit/0841916e87a39e3c223c986e8da31e4a9a1432e3.patch";
-      sha256 = "1kckghvsngs51mqm82asy0s9vr19h8aqbw43a0w44mccqw6bzrwf";
-      stripLen = 1;
-    })
-
-    # Fix musl build.
-    (fetchpatch {
-      url = "https://github.com/llvm/llvm-project/commit/5cd554303ead0f8891eee3cd6d25cb07f5a7bf67.patch";
-      relative = "llvm";
-      hash = "sha256-XPbvNJ45SzjMGlNUgt/IgEvM2dHQpDOe6woUJY+nUYA=";
-    })
-
-    # Backport gcc-13 fixes with missing includes.
-    (fetchpatch {
-      name = "signals-gcc-13.patch";
-      url = "https://github.com/llvm/llvm-project/commit/ff1681ddb303223973653f7f5f3f3435b48a1983.patch";
-      hash = "sha256-CXwYxQezTq5vdmc8Yn88BUAEly6YZ5VEIA6X3y5NNOs=";
-      stripLen = 1;
-    })
-  ] ++ lib.optionals enablePolly [
-    ./gnu-install-dirs-polly.patch
-    # Add missing isl header includess required to build LLVM 10 + Polly with clang 16.
-    (fetchpatch {
-      name = "polly-ppcg-isl-headers.patch";
-      url = "https://repo.or.cz/ppcg.git/patch/098ba285306114dc71497f7b51c357f69c9b4472";
-      hash = "sha256-c9L30rDROYAMbUSuaK9U/ixyFMlH/Sa1n+VgLODzSCQ=";
-      extraPrefix = "tools/polly/lib/External/ppcg/";
-      stripLen = 1;
-    })
-  ];
-
-  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})' ""
-  '' + ''
-    # FileSystem permissions tests fail with various special bits
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "Path.cpp" ""
-    rm unittests/Support/Path.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/DebugInfo/X86/debug_addr.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
-  '' + ''
-    # Tweak tests to ignore namespace part of type to support
-    # gcc-12: https://gcc.gnu.org/PR103598.
-    # The change below mangles strings like:
-    #    CHECK-NEXT: Starting llvm::Function pass manager run.
-    # to:
-    #    CHECK-NEXT: Starting {{.*}}Function pass manager run.
-    for f in \
-      test/Other/new-pass-manager.ll \
-      test/Other/new-pm-defaults.ll \
-      test/Other/new-pm-lto-defaults.ll \
-      test/Other/new-pm-thinlto-defaults.ll \
-      test/Other/pass-pipeline-parsing.ll \
-      test/Transforms/Inline/cgscc-incremental-invalidate.ll \
-      test/Transforms/Inline/clear-analyses.ll \
-      test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \
-      test/Transforms/SCCP/ipsccp-preserve-analysis.ll \
-      test/Transforms/SCCP/preserve-analysis.ll \
-      test/Transforms/SROA/dead-inst.ll \
-      test/tools/gold/X86/new-pm.ll \
-      ; do
-      echo "PATCH: $f"
-      substituteInPlace $f \
-        --replace 'Starting llvm::' 'Starting {{.*}}' \
-        --replace 'Finished llvm::' 'Finished {{.*}}'
-    done
-  '';
-
-  preConfigure = ''
-    # Workaround for configure flags that need to have spaces
-    cmakeFlagsArray+=(
-      -DLLVM_LIT_ARGS='-svj''${NIX_BUILD_CORES} --no-progress-bar'
-    )
-  '';
-
-  # hacky fix: created binaries need to be run before installation
-  preBuild = ''
-    mkdir -p $out/
-    ln -sv $PWD/lib $out
-  '';
-
-  cmakeBuildType = if debugVersion then "Debug" else "Release";
-
-  cmakeFlags = with stdenv; let
-    # These flags influence llvm-config's BuildVariables.inc in addition to the
-    # general build. We need to make sure these are also passed via
-    # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native
-    # will return different results from the cross llvm-config.
-    #
-    # Some flags don't need to be repassed because LLVM already does so (like
-    # CMAKE_BUILD_TYPE), others are irrelevant to the result.
-    flagsForLlvmConfig = [
-      "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
-      "-DLLVM_ENABLE_RTTI=ON"
-    ] ++ optionals enableSharedLibraries [
-      "-DLLVM_LINK_LLVM_DYLIB=ON"
-    ];
-  in flagsForLlvmConfig ++ [
-    "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
-    "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
-    "-DLLVM_ENABLE_FFI=ON"
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_ENABLE_DUMP=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 (enableGoldPlugin) [
-    "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
-  ] ++ optionals isDarwin [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DCAN_TARGET_i386=false"
-  ] ++ optionals ((stdenv.hostPlatform != stdenv.buildPlatform) && !(stdenv.buildPlatform.canExecute stdenv.hostPlatform)) [
-    "-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"
-        ];
-        # We need to repass the custom GNUInstallDirs values, otherwise CMake
-        # will choose them for us, leading to wrong results in llvm-config-native
-        nativeInstallFlags = [
-          "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}"
-          "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin"
-          "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include"
-          "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib"
-          "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec"
-        ];
-      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list="
-      + lib.concatStringsSep ";" (lib.concatLists [
-        flagsForLlvmConfig
-        nativeToolchainFlags
-        nativeInstallFlags
-      ])
-    )
-  ];
-
-  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
-  '';
-
-  inherit doCheck;
-
-  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/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs-polly.patch b/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs-polly.patch
deleted file mode 100644
index 3353058d8ab1..000000000000
--- a/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs-polly.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-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/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs.patch
deleted file mode 100644
index 155bab32f439..000000000000
--- a/pkgs/development/compilers/llvm/10/llvm/gnu-install-dirs.patch
+++ /dev/null
@@ -1,416 +0,0 @@
-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/pkgs/development/compilers/llvm/10/openmp/default.nix b/pkgs/development/compilers/llvm/10/openmp/default.nix
deleted file mode 100644
index 012f882e5871..000000000000
--- a/pkgs/development/compilers/llvm/10/openmp/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib
-, stdenv
-, llvm_meta
-, fetch
-, cmake
-, llvm
-, targetLlvm
-, perl
-, version
-}:
-
-stdenv.mkDerivation rec {
-  pname = "openmp";
-  inherit version;
-
-  src = fetch pname "0i4bn84lkpm5w3qkpvwm5z6jdj8fynp7d3bcasa1xyq4is6757yi";
-
-  nativeBuildInputs = [ cmake perl ];
-  buildInputs = [
-    (if stdenv.buildPlatform == stdenv.hostPlatform then llvm else targetLlvm)
-  ];
-
-  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/pkgs/development/compilers/llvm/8/clang/HIP-use-PATH-8.patch b/pkgs/development/compilers/llvm/8/clang/HIP-use-PATH-8.patch
deleted file mode 100644
index f4be100d1ab9..000000000000
--- a/pkgs/development/compilers/llvm/8/clang/HIP-use-PATH-8.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From d9f1b7d7571b252e0ba2359ae6cfa93a9903c0e7 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Holger=20W=C3=BCnsche?= <holger.o.wuensche@t-online.de>
-Date: Tue, 21 Jan 2020 19:49:44 +0100
-Subject: [PATCH] [HIP] use GetProgramPath for executable discovery
-
-This change replaces the manual building of executable paths
-using llvm::sys::path::append with GetProgramPath.
-This enables adding other paths in case executables reside
-in different directories and makes the code easier to read.
-
-Differential Revision: https://reviews.llvm.org/D72903
----
- clang/lib/Driver/ToolChains/HIP.cpp | 23 ++++++++---------------
- 1 file changed, 8 insertions(+), 15 deletions(-)
-
-diff --git a/lib/Driver/ToolChains/HIP.cpp b/lang/lib/Driver/ToolChains/HIP.cpp
-index 868765cf88e..31f2d68ec6c 100644
---- a/lib/Driver/ToolChains/HIP.cpp
-+++ b/lib/Driver/ToolChains/HIP.cpp
-@@ -104,9 +104,8 @@ const char *AMDGCN::Linker::constructLLVMLinkCommand(
-   const char *OutputFileName =
-       C.addTempFile(C.getArgs().MakeArgString(TmpName));
-   CmdArgs.push_back(OutputFileName);
--  SmallString<128> ExecPath(C.getDriver().Dir);
--  llvm::sys::path::append(ExecPath, "llvm-link");
--  const char *Exec = Args.MakeArgString(ExecPath);
-+  const char *Exec =
-+      Args.MakeArgString(getToolChain().GetProgramPath("llvm-link"));
-   C.addCommand(llvm::make_unique<Command>(JA, *this, Exec, CmdArgs, Inputs));
-   return OutputFileName;
- }
-@@ -147,9 +146,8 @@ const char *AMDGCN::Linker::constructOptCommand(
-   const char *OutputFileName =
-       C.addTempFile(C.getArgs().MakeArgString(TmpFileName));
-   OptArgs.push_back(OutputFileName);
--  SmallString<128> OptPath(C.getDriver().Dir);
--  llvm::sys::path::append(OptPath, "opt");
--  const char *OptExec = Args.MakeArgString(OptPath);
-+  const char *OptExec =
-+      Args.MakeArgString(getToolChain().GetProgramPath("opt"));
-   C.addCommand(llvm::make_unique<Command>(JA, *this, OptExec, OptArgs, Inputs));
-   return OutputFileName;
- }
-@@ -167,9 +165,7 @@ const char *AMDGCN::Linker::constructLlcCommand(
-   const char *LlcOutputFile =
-       C.addTempFile(C.getArgs().MakeArgString(LlcOutputFileName));
-   LlcArgs.push_back(LlcOutputFile);
--  SmallString<128> LlcPath(C.getDriver().Dir);
--  llvm::sys::path::append(LlcPath, "llc");
--  const char *Llc = Args.MakeArgString(LlcPath);
-+  const char *Llc = Args.MakeArgString(getToolChain().GetProgramPath("llc"));
-   C.addCommand(llvm::make_unique<Command>(JA, *this, Llc, LlcArgs, Inputs));
-   return LlcOutputFile;
- }
-@@ -184,9 +180,7 @@ void AMDGCN::Linker::constructLldCommand(Compilation &C, const JobAction &JA,
-   ArgStringList LldArgs{"-flavor",    "gnu", "--no-undefined",
-                         "-shared",    "-o",  Output.getFilename(),
-                         InputFileName};
--  SmallString<128> LldPath(C.getDriver().Dir);
--  llvm::sys::path::append(LldPath, "lld");
--  const char *Lld = Args.MakeArgString(LldPath);
-+  const char *Lld = Args.MakeArgString(getToolChain().GetProgramPath("lld"));
-   C.addCommand(llvm::make_unique<Command>(JA, *this, Lld, LldArgs, Inputs));
- }
- 
-@@ -218,9 +212,8 @@ void AMDGCN::constructHIPFatbinCommand(Compilation &C, const JobAction &JA,
-       Args.MakeArgString(std::string("-outputs=").append(OutputFileName));
-   BundlerArgs.push_back(BundlerOutputArg);
- 
--  SmallString<128> BundlerPath(C.getDriver().Dir);
--  llvm::sys::path::append(BundlerPath, "clang-offload-bundler");
--  const char *Bundler = Args.MakeArgString(BundlerPath);
-+  const char *Bundler = Args.MakeArgString(
-+          T.getToolChain().GetProgramPath("clang-offload-bundler"));
-   C.addCommand(llvm::make_unique<Command>(JA, T, Bundler, BundlerArgs, Inputs));
- }
- 
--- 
-2.23.1
-
diff --git a/pkgs/development/compilers/llvm/8/clang/compiler-rt-baremetal.patch b/pkgs/development/compilers/llvm/8/clang/compiler-rt-baremetal.patch
deleted file mode 100644
index a4a0f21b0fcd..000000000000
--- a/pkgs/development/compilers/llvm/8/clang/compiler-rt-baremetal.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-Index: lib/Driver/ToolChains/BareMetal.cpp
-===================================================================
---- a/lib/Driver/ToolChains/BareMetal.cpp
-+++ b/lib/Driver/ToolChains/BareMetal.cpp
-@@ -157,7 +157,7 @@
- void BareMetal::AddLinkRuntimeLib(const ArgList &Args,
-                                   ArgStringList &CmdArgs) const {
-   CmdArgs.push_back(Args.MakeArgString("-lclang_rt.builtins-" +
--                                       getTriple().getArchName() + ".a"));
-+                                       getTriple().getArchName()));
- }
- 
- void baremetal::Linker::ConstructJob(Compilation &C, const JobAction &JA,
-Index: test/Driver/baremetal.cpp
-===================================================================
---- a/test/Driver/baremetal.cpp
-+++ b/test/Driver/baremetal.cpp
-@@ -13,7 +13,7 @@
- // CHECK-V6M-C-NEXT: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
- // CHECK-V6M-C-SAME: "-L[[RESOURCE_DIR:[^"]+]]{{[/\\]+}}lib{{[/\\]+}}baremetal"
- // CHECK-V6M-C-SAME: "-T" "semihosted.lds" "-Lsome{{[/\\]+}}directory{{[/\\]+}}user{{[/\\]+}}asked{{[/\\]+}}for"
--// CHECK-V6M-C-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
-+// CHECK-V6M-C-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
- // CHECK-V6M-C-SAME: "-o" "{{.*}}.o"
- 
- // RUN: %clang -no-canonical-prefixes %s -### -o %t.o 2>&1 \
-@@ -35,7 +35,7 @@
- // CHECK-V6M-DEFAULTCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
- // CHECK-V6M-DEFAULTCXX-SAME: "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
- // CHECK-V6M-DEFAULTCXX-SAME: "-lc++" "-lc++abi" "-lunwind"
--// CHECK-V6M-DEFAULTCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
-+// CHECK-V6M-DEFAULTCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
- // CHECK-V6M-DEFAULTCXX-SAME: "-o" "{{.*}}.o"
- 
- // RUN: %clangxx -no-canonical-prefixes %s -### -o %t.o 2>&1 \
-@@ -48,7 +48,7 @@
- // CHECK-V6M-LIBCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
- // CHECK-V6M-LIBCXX-SAME: "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
- // CHECK-V6M-LIBCXX-SAME: "-lc++" "-lc++abi" "-lunwind"
--// CHECK-V6M-LIBCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
-+// CHECK-V6M-LIBCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
- // CHECK-V6M-LIBCXX-SAME: "-o" "{{.*}}.o"
- 
- // RUN: %clangxx -no-canonical-prefixes %s -### -o %t.o 2>&1 \
-@@ -61,7 +61,7 @@
- // CHECK-V6M-LIBSTDCXX: "{{[^"]*}}ld{{(\.(lld|bfd|gold))?}}{{(\.exe)?}}" "{{.*}}.o" "-Bstatic"
- // CHECK-V6M-LIBSTDCXX-SAME: "-L{{[^"]*}}{{[/\\]+}}lib{{(64)?}}{{[/\\]+}}clang{{[/\\]+}}{{.*}}{{[/\\]+}}lib{{[/\\]+}}baremetal"
- // CHECK-V6M-LIBSTDCXX-SAME: "-lstdc++" "-lsupc++" "-lunwind"
--// CHECK-V6M-LIBSTDCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m.a"
-+// CHECK-V6M-LIBSTDCXX-SAME: "-lc" "-lm" "-lclang_rt.builtins-armv6m"
- // CHECK-V6M-LIBSTDCXX-SAME: "-o" "{{.*}}.o"
- 
- // RUN: %clangxx -no-canonical-prefixes %s -### -o %t.o 2>&1 \
diff --git a/pkgs/development/compilers/llvm/8/clang/default.nix b/pkgs/development/compilers/llvm/8/clang/default.nix
deleted file mode 100644
index 994f9bd967c4..000000000000
--- a/pkgs/development/compilers/llvm/8/clang/default.nix
+++ /dev/null
@@ -1,145 +0,0 @@
-{ lib, stdenv, llvm_meta, fetch, substituteAll, cmake, libxml2, libllvm, version, clang-tools-extra_src, python3
-, buildLlvmTools
-, fixDarwinDylibNames
-, enableManpages ? false
-, enablePolly ? false # TODO: get this info from llvm (passthru?)
-}:
-
-let
-  self = stdenv.mkDerivation ({
-    pname = "clang";
-    inherit version;
-
-    src = fetch "cfe" "0ihnbdl058gvl2wdy45p5am55bq8ifx8m9mhcsgj9ax8yxlzvvvh";
-
-    unpackPhase = ''
-      unpackFile $src
-      mv cfe-${version}* clang
-      sourceRoot=$PWD/clang
-      unpackFile ${clang-tools-extra_src}
-      mv clang-tools-extra-* $sourceRoot/tools/extra
-    '';
-
-    nativeBuildInputs = [ cmake python3 ]
-      ++ lib.optional enableManpages python3.pkgs.sphinx
-      ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
-
-    buildInputs = [ libxml2 libllvm ];
-
-    cmakeFlags = [
-      "-DCMAKE_CXX_FLAGS=-std=c++11"
-      "-DCLANGD_BUILD_XPC=OFF"
-      "-DLLVM_ENABLE_RTTI=ON"
-    ] ++ 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 = [
-      ../../common/clang/5-8-purity.patch
-      ./xpc.patch
-      # Backport for -static-pie, which the latter touches, and which is nice in
-      # its own right.
-      ./static-pie.patch
-      # Backport for the `--unwindlib=[libgcc|compiler-rt]` flag, which is
-      # needed for our bootstrapping to not interfere with C.
-      ./unwindlib.patch
-      # https://reviews.llvm.org/D51899
-      ./compiler-rt-baremetal.patch
-      # make clang -xhip use $PATH to find executables
-      ./HIP-use-PATH-8.patch
-      ./gnu-install-dirs.patch
-      (substituteAll {
-        src = ../../clang-6-10-LLVMgold-path.patch;
-        libllvmLibdir = "${libllvm.lib}/lib";
-      })
-    ];
-
-    postPatch = ''
-      sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \
-             -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' \
-             lib/Driver/ToolChains/*.cpp
-    '' + lib.optionalString stdenv.hostPlatform.isMusl ''
-      sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp
-    '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
-      substituteInPlace tools/extra/clangd/CMakeLists.txt \
-        --replace "NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB" FALSE
-    '';
-
-    outputs = [ "out" "lib" "dev" "python" ];
-
-    postInstall = ''
-      ln -sv $out/bin/clang $out/bin/cpp
-
-      # Move libclang to 'lib' output
-      moveToOutput "lib/libclang.*" "$lib"
-      substituteInPlace $out/lib/cmake/clang/ClangTargets-release.cmake \
-          --replace "\''${_IMPORT_PREFIX}/lib/libclang." "$lib/lib/libclang."
-
-      mkdir -p $python/bin $python/share/{clang,scan-view}
-      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
-      mv $out/share/scan-view/*.py $python/share/scan-view
-      rm $out/bin/c-index-test
-      patchShebangs $python/bin
-
-      mkdir -p $dev/bin
-      cp bin/clang-tblgen $dev/bin
-    '';
-
-    passthru = {
-      inherit libllvm;
-      isClang = true;
-      hardeningUnsupportedFlags = [ "fortify3" ];
-    };
-
-    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.
-      '';
-      mainProgram = "clang";
-    };
-  } // 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/pkgs/development/compilers/llvm/8/clang/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/8/clang/gnu-install-dirs.patch
deleted file mode 100644
index e4b9c3f8ddd6..000000000000
--- a/pkgs/development/compilers/llvm/8/clang/gnu-install-dirs.patch
+++ /dev/null
@@ -1,290 +0,0 @@
-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/pkgs/development/compilers/llvm/8/clang/static-pie.patch b/pkgs/development/compilers/llvm/8/clang/static-pie.patch
deleted file mode 100644
index d1f86a162327..000000000000
--- a/pkgs/development/compilers/llvm/8/clang/static-pie.patch
+++ /dev/null
@@ -1,157 +0,0 @@
-commit 7a9842bc92921e79b84630045276861be90b2d47
-Author: Siva Chandra <sivachandra@google.com>
-Date:   Wed Feb 20 19:07:04 2019 +0000
-
-    [Clang Driver] Add support for "-static-pie" argument to the Clang driver.
-    
-    Summary: This change mimics GCC's support for the "-static-pie" argument.
-    
-    Subscribers: cfe-commits
-    
-    Tags: #clang
-    
-    Differential Revision: https://reviews.llvm.org/D58307
-    
-    git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@354502 91177308-0d34-0410-b5e6-96231b3b80d8
-    (cherry picked from commit 7d6cd7825e6883f8650e32b07f3750824c2cef62)
-
-diff --git a/include/clang/Driver/Options.td b/include/clang/Driver/Options.td
-index d02d9744d7..75a21e66c7 100644
---- a/include/clang/Driver/Options.td
-+++ b/include/clang/Driver/Options.td
-@@ -2502,6 +2502,7 @@ def pthread : Flag<["-"], "pthread">, Flags<[CC1Option]>,
- def no_pthread : Flag<["-"], "no-pthread">, Flags<[CC1Option]>;
- def p : Flag<["-"], "p">;
- def pie : Flag<["-"], "pie">;
-+def static_pie : Flag<["-"], "static-pie">;
- def read__only__relocs : Separate<["-"], "read_only_relocs">;
- def remap : Flag<["-"], "remap">;
- def rewrite_objc : Flag<["-"], "rewrite-objc">, Flags<[DriverOption,CC1Option]>,
-diff --git a/lib/Driver/ToolChains/CommonArgs.cpp b/lib/Driver/ToolChains/CommonArgs.cpp
-index d7e316befa..85ffc1618d 100644
---- a/lib/Driver/ToolChains/CommonArgs.cpp
-+++ b/lib/Driver/ToolChains/CommonArgs.cpp
-@@ -1138,19 +1138,22 @@ static void AddLibgcc(const llvm::Triple &Triple, const Driver &D,
-   bool isCygMing = Triple.isOSCygMing();
-   bool IsIAMCU = Triple.isOSIAMCU();
-   bool StaticLibgcc = Args.hasArg(options::OPT_static_libgcc) ||
--                      Args.hasArg(options::OPT_static);
-+                      Args.hasArg(options::OPT_static) ||
-+                      Args.hasArg(options::OPT_static_pie);
- 
-   bool SharedLibgcc = Args.hasArg(options::OPT_shared_libgcc);
-   bool UnspecifiedLibgcc = !StaticLibgcc && !SharedLibgcc;
- 
-   // Gcc adds libgcc arguments in various ways:
-   //
--  // gcc <none>: -lgcc --as-needed -lgcc_s --no-as-needed
--  // g++ <none>:                   -lgcc_s               -lgcc
--  // gcc shared:                   -lgcc_s               -lgcc
--  // g++ shared:                   -lgcc_s               -lgcc
--  // gcc static: -lgcc             -lgcc_eh
--  // g++ static: -lgcc             -lgcc_eh
-+  // gcc <none>:     -lgcc --as-needed -lgcc_s --no-as-needed
-+  // g++ <none>:                       -lgcc_s               -lgcc
-+  // gcc shared:                       -lgcc_s               -lgcc
-+  // g++ shared:                       -lgcc_s               -lgcc
-+  // gcc static:     -lgcc             -lgcc_eh
-+  // g++ static:     -lgcc             -lgcc_eh
-+  // gcc static-pie: -lgcc             -lgcc_eh
-+  // g++ static-pie: -lgcc             -lgcc_eh
-   //
-   // Also, certain targets need additional adjustments.
- 
-diff --git a/lib/Driver/ToolChains/Gnu.cpp b/lib/Driver/ToolChains/Gnu.cpp
-index 69dba8fec8..0faa0bb473 100644
---- a/lib/Driver/ToolChains/Gnu.cpp
-+++ b/lib/Driver/ToolChains/Gnu.cpp
-@@ -334,6 +334,7 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
-   const bool isAndroid = ToolChain.getTriple().isAndroid();
-   const bool IsIAMCU = ToolChain.getTriple().isOSIAMCU();
-   const bool IsPIE = getPIE(Args, ToolChain);
-+  const bool IsStaticPIE = Args.hasArg(options::OPT_static_pie);
-   const bool HasCRTBeginEndFiles =
-       ToolChain.getTriple().hasEnvironment() ||
-       (ToolChain.getTriple().getVendor() != llvm::Triple::MipsTechnologies);
-@@ -354,6 +355,12 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
-   if (IsPIE)
-     CmdArgs.push_back("-pie");
- 
-+  if (IsStaticPIE) {
-+    CmdArgs.push_back("-static");
-+    CmdArgs.push_back("-pie");
-+    CmdArgs.push_back("--no-dynamic-linker");
-+  }
-+
-   if (Args.hasArg(options::OPT_rdynamic))
-     CmdArgs.push_back("-export-dynamic");
- 
-@@ -415,6 +422,8 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
-           crt1 = "gcrt1.o";
-         else if (IsPIE)
-           crt1 = "Scrt1.o";
-+        else if (IsStaticPIE)
-+          crt1 = "rcrt1.o";
-         else
-           crt1 = "crt1.o";
-       }
-@@ -432,7 +441,7 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
-         crtbegin = isAndroid ? "crtbegin_static.o" : "crtbeginT.o";
-       else if (Args.hasArg(options::OPT_shared))
-         crtbegin = isAndroid ? "crtbegin_so.o" : "crtbeginS.o";
--      else if (IsPIE)
-+      else if (IsPIE || IsStaticPIE)
-         crtbegin = isAndroid ? "crtbegin_dynamic.o" : "crtbeginS.o";
-       else
-         crtbegin = isAndroid ? "crtbegin_dynamic.o" : "crtbegin.o";
-@@ -483,7 +492,7 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
- 
-   if (!Args.hasArg(options::OPT_nostdlib)) {
-     if (!Args.hasArg(options::OPT_nodefaultlibs)) {
--      if (Args.hasArg(options::OPT_static))
-+      if (Args.hasArg(options::OPT_static) || IsStaticPIE)
-         CmdArgs.push_back("--start-group");
- 
-       if (NeedsSanitizerDeps)
-@@ -518,7 +527,7 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
-       if (IsIAMCU)
-         CmdArgs.push_back("-lgloss");
- 
--      if (Args.hasArg(options::OPT_static))
-+      if (Args.hasArg(options::OPT_static) || IsStaticPIE)
-         CmdArgs.push_back("--end-group");
-       else
-         AddRunTimeLibs(ToolChain, D, CmdArgs, Args);
-@@ -535,7 +544,7 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
-       const char *crtend;
-       if (Args.hasArg(options::OPT_shared))
-         crtend = isAndroid ? "crtend_so.o" : "crtendS.o";
--      else if (IsPIE)
-+      else if (IsPIE || IsStaticPIE)
-         crtend = isAndroid ? "crtend_android.o" : "crtendS.o";
-       else
-         crtend = isAndroid ? "crtend_android.o" : "crtend.o";
-diff --git a/test/Driver/linux-ld.c b/test/Driver/linux-ld.c
-index 3ab81be490..800f782523 100644
---- a/test/Driver/linux-ld.c
-+++ b/test/Driver/linux-ld.c
-@@ -176,6 +176,19 @@
- // CHECK-CLANG-NO-LIBGCC-STATIC: "{{.*}}ld{{(.exe)?}}" "--sysroot=[[SYSROOT:[^"]+]]"
- // CHECK-CLANG-NO-LIBGCC-STATIC: "--start-group" "-lgcc" "-lgcc_eh" "-lc" "--end-group"
- //
-+// RUN: %clang -static-pie -no-canonical-prefixes %s -### -o %t.o 2>&1 \
-+// RUN:     --target=x86_64-unknown-linux -rtlib=platform \
-+// RUN:     --gcc-toolchain="" \
-+// RUN:     --sysroot=%S/Inputs/basic_linux_tree \
-+// RUN:   | FileCheck --check-prefix=CHECK-CLANG-LD-STATIC-PIE %s
-+// CHECK-CLANG-LD-STATIC-PIE: "{{.*}}ld{{(.exe)?}}" "--sysroot=[[SYSROOT:[^"]+]]"
-+// CHECK-CLANG-LD-STATIC-PIE: "-static"
-+// CHECK-CLANG-LD-STATIC-PIE: "-pie"
-+// CHECK-CLANG-LD-STATIC-PIE: "--no-dynamic-linker"
-+// CHECK-CLANG-LD-STATIC-PIE: "-m" "elf_x86_64"
-+// CHECK-CLANG-LD-STATIC-PIE: "{{.*}}rcrt1.o"
-+// CHECK-CLANG-LD-STATIC-PIE: "--start-group" "-lgcc" "-lgcc_eh" "-lc" "--end-group"
-+//
- // RUN: %clang -dynamic -no-canonical-prefixes %s -### -o %t.o 2>&1 \
- // RUN:     --target=x86_64-unknown-linux -rtlib=platform \
- // RUN:     --gcc-toolchain="" \
diff --git a/pkgs/development/compilers/llvm/8/clang/unwindlib.patch b/pkgs/development/compilers/llvm/8/clang/unwindlib.patch
deleted file mode 100644
index 6958fce60cef..000000000000
--- a/pkgs/development/compilers/llvm/8/clang/unwindlib.patch
+++ /dev/null
@@ -1,372 +0,0 @@
-commit cd5603a4767277a29d3e67a9c3f2a5d2129cd973
-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
-    
-    git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@356508 91177308-0d34-0410-b5e6-96231b3b80d8
-    (cherry picked from commit 344aa82a52f2fae527f58284567ae305a314f7a8)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index c2016a45ca..edeb2b66a1 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -261,6 +261,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 a/include/clang/Basic/DiagnosticDriverKinds.td b/include/clang/Basic/DiagnosticDriverKinds.td
-index 5475e28ed7..15971210e4 100644
---- a/include/clang/Basic/DiagnosticDriverKinds.td
-+++ b/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 a/include/clang/Config/config.h.cmake b/include/clang/Config/config.h.cmake
-index 1d624450b9..2d4cb747e8 100644
---- a/include/clang/Config/config.h.cmake
-+++ b/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 a/include/clang/Driver/Options.td b/include/clang/Driver/Options.td
-index 75a21e66c7..4da0e54965 100644
---- a/include/clang/Driver/Options.td
-+++ b/include/clang/Driver/Options.td
-@@ -2570,6 +2570,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 a/include/clang/Driver/ToolChain.h b/include/clang/Driver/ToolChain.h
-index d5f75b8271..4bedf760eb 100644
---- a/include/clang/Driver/ToolChain.h
-+++ b/include/clang/Driver/ToolChain.h
-@@ -100,6 +100,12 @@ public:
-     RLT_Libgcc
-   };
- 
-+  enum UnwindLibType {
-+    UNW_None,
-+    UNW_CompilerRT,
-+    UNW_Libgcc
-+  };
-+
-   enum RTTIMode {
-     RM_Enabled,
-     RM_Disabled,
-@@ -368,6 +374,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,
-@@ -512,6 +522,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 a/lib/Driver/ToolChain.cpp b/lib/Driver/ToolChain.cpp
-index 88a627eab6..d82423f4a8 100644
---- a/lib/Driver/ToolChain.cpp
-+++ b/lib/Driver/ToolChain.cpp
-@@ -680,6 +680,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 a/lib/Driver/ToolChains/CommonArgs.cpp b/lib/Driver/ToolChains/CommonArgs.cpp
-index 85ffc1618d..9fd29726a4 100644
---- a/lib/Driver/ToolChains/CommonArgs.cpp
-+++ b/lib/Driver/ToolChains/CommonArgs.cpp
-@@ -1132,47 +1132,80 @@ bool tools::isObjCAutoRefCount(const ArgList &Args) {
-   return Args.hasFlag(options::OPT_fobjc_arc, options::OPT_fno_objc_arc, false);
- }
- 
--static void AddLibgcc(const llvm::Triple &Triple, const Driver &D,
--                      ArgStringList &CmdArgs, const ArgList &Args) {
--  bool isAndroid = Triple.isAndroid();
--  bool isCygMing = Triple.isOSCygMing();
--  bool IsIAMCU = Triple.isOSIAMCU();
--  bool StaticLibgcc = Args.hasArg(options::OPT_static_libgcc) ||
--                      Args.hasArg(options::OPT_static) ||
--                      Args.hasArg(options::OPT_static_pie);
--
--  bool SharedLibgcc = Args.hasArg(options::OPT_shared_libgcc);
--  bool UnspecifiedLibgcc = !StaticLibgcc && !SharedLibgcc;
--
--  // Gcc adds libgcc arguments in various ways:
--  //
--  // gcc <none>:     -lgcc --as-needed -lgcc_s --no-as-needed
--  // g++ <none>:                       -lgcc_s               -lgcc
--  // gcc shared:                       -lgcc_s               -lgcc
--  // g++ shared:                       -lgcc_s               -lgcc
--  // gcc static:     -lgcc             -lgcc_eh
--  // g++ static:     -lgcc             -lgcc_eh
--  // gcc static-pie: -lgcc             -lgcc_eh
--  // g++ static-pie: -lgcc             -lgcc_eh
--  //
--  // Also, certain targets need additional adjustments.
-+enum class LibGccType { UnspecifiedLibGcc, StaticLibGcc, SharedLibGcc };
-+
-+static LibGccType getLibGccType(const ArgList &Args) {
-+  bool Static = Args.hasArg(options::OPT_static_libgcc) ||
-+                Args.hasArg(options::OPT_static) ||
-+                Args.hasArg(options::OPT_static_pie);
-+
-+  bool Shared = Args.hasArg(options::OPT_shared_libgcc);
-+  if (Shared)
-+    return LibGccType::SharedLibGcc;
-+  if (Static)
-+    return LibGccType::StaticLibGcc;
-+  return LibGccType::UnspecifiedLibGcc;
-+}
- 
--  bool LibGccFirst = (D.CCCIsCC() && UnspecifiedLibgcc) || StaticLibgcc;
--  if (LibGccFirst)
--    CmdArgs.push_back("-lgcc");
-+// Gcc adds libgcc arguments in various ways:
-+//
-+// gcc <none>:     -lgcc --as-needed -lgcc_s --no-as-needed
-+// g++ <none>:                       -lgcc_s               -lgcc
-+// gcc shared:                       -lgcc_s               -lgcc
-+// g++ shared:                       -lgcc_s               -lgcc
-+// gcc static:     -lgcc             -lgcc_eh
-+// g++ static:     -lgcc             -lgcc_eh
-+// gcc static-pie: -lgcc             -lgcc_eh
-+// g++ static-pie: -lgcc             -lgcc_eh
-+//
-+// Also, certain targets need additional adjustments.
-+
-+static void AddUnwindLibrary(const ToolChain &TC, const Driver &D,
-+                             ArgStringList &CmdArgs, const ArgList &Args) {
-+  ToolChain::UnwindLibType UNW = TC.GetUnwindLibType(Args);
-+  // Targets that don't use unwind libraries.
-+  if (TC.getTriple().isAndroid() || TC.getTriple().isOSIAMCU() ||
-+      TC.getTriple().isOSBinFormatWasm() ||
-+      UNW == ToolChain::UNW_None)
-+    return;
- 
--  bool AsNeeded = D.CCCIsCC() && UnspecifiedLibgcc && !isAndroid && !isCygMing;
-+  LibGccType LGT = getLibGccType(Args);
-+  bool AsNeeded = D.CCCIsCC() && LGT == LibGccType::UnspecifiedLibGcc &&
-+                  !TC.getTriple().isAndroid() && !TC.getTriple().isOSCygMing();
-   if (AsNeeded)
-     CmdArgs.push_back("--as-needed");
- 
--  if ((UnspecifiedLibgcc || SharedLibgcc) && !isAndroid)
--    CmdArgs.push_back("-lgcc_s");
--
--  else if (StaticLibgcc && !isAndroid && !IsIAMCU)
--    CmdArgs.push_back("-lgcc_eh");
-+  switch (UNW) {
-+  case ToolChain::UNW_None:
-+    return;
-+  case ToolChain::UNW_Libgcc: {
-+    LibGccType LGT = getLibGccType(Args);
-+    if (LGT == LibGccType::UnspecifiedLibGcc || LGT == LibGccType::SharedLibGcc)
-+      CmdArgs.push_back("-lgcc_s");
-+    else if (LGT == LibGccType::StaticLibGcc)
-+      CmdArgs.push_back("-lgcc_eh");
-+    break;
-+  }
-+  case ToolChain::UNW_CompilerRT:
-+    CmdArgs.push_back("-lunwind");
-+    break;
-+  }
- 
-   if (AsNeeded)
-     CmdArgs.push_back("--no-as-needed");
-+}
-+
-+static void AddLibgcc(const ToolChain &TC, const Driver &D,
-+                      ArgStringList &CmdArgs, const ArgList &Args) {
-+  bool isAndroid = TC.getTriple().isAndroid();
-+
-+  LibGccType LGT = getLibGccType(Args);
-+  bool LibGccFirst = (D.CCCIsCC() && LGT == LibGccType::UnspecifiedLibGcc) ||
-+                     LGT == LibGccType::StaticLibGcc;
-+  if (LibGccFirst)
-+    CmdArgs.push_back("-lgcc");
-+
-+  AddUnwindLibrary(TC, D, CmdArgs, Args);
- 
-   if (!LibGccFirst)
-     CmdArgs.push_back("-lgcc");
-@@ -1182,7 +1215,7 @@ static void AddLibgcc(const llvm::Triple &Triple, const Driver &D,
-   //
-   // NOTE: This fixes a link error on Android MIPS as well.  The non-static
-   // libgcc for MIPS relies on _Unwind_Find_FDE and dl_iterate_phdr from libdl.
--  if (isAndroid && !StaticLibgcc)
-+  if (isAndroid && getLibGccType(Args) != LibGccType::StaticLibGcc)
-     CmdArgs.push_back("-ldl");
- }
- 
-@@ -1194,6 +1227,7 @@ void tools::AddRunTimeLibs(const ToolChain &TC, const Driver &D,
-   switch (RLT) {
-   case ToolChain::RLT_CompilerRT:
-     CmdArgs.push_back(TC.getCompilerRTArgString(Args, "builtins"));
-+    AddUnwindLibrary(TC, D, CmdArgs, Args);
-     break;
-   case ToolChain::RLT_Libgcc:
-     // Make sure libgcc is not used under MSVC environment by default
-@@ -1205,7 +1239,7 @@ void tools::AddRunTimeLibs(const ToolChain &TC, const Driver &D,
-             << Args.getLastArg(options::OPT_rtlib_EQ)->getValue() << "MSVC";
-       }
-     } else
--      AddLibgcc(TC.getTriple(), D, CmdArgs, Args);
-+      AddLibgcc(TC, D, CmdArgs, Args);
-     break;
-   }
- }
-diff --git a/test/Driver/compiler-rt-unwind.c b/test/Driver/compiler-rt-unwind.c
-new file mode 100644
-index 0000000000..00024dfa7e
---- /dev/null
-+++ b/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/pkgs/development/compilers/llvm/8/clang/xpc.patch b/pkgs/development/compilers/llvm/8/clang/xpc.patch
deleted file mode 100644
index eb57d3458228..000000000000
--- a/pkgs/development/compilers/llvm/8/clang/xpc.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 61c9b97d7b81cc2c013b423bf1763a92b14fcae3 Mon Sep 17 00:00:00 2001
-From: Jan Korous <jkorous@apple.com>
-Date: Tue, 26 Mar 2019 03:48:25 +0000
-Subject: [PATCH] [clangd][xpc][cmake] Respect explicit value of
- CLANGD_BUILD_XPC
-
-We shouldn't prevent user from disabling XPC framework build on Darwin.
-However, by keeping it on by default our CI systems also test
-it by default on macOS.
-
-Based on user request:
-http://lists.llvm.org/pipermail/cfe-dev/2019-March/061778.html
-
-Differential Revision: https://reviews.llvm.org/D59808
-
-git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/trunk@356974 91177308-0d34-0410-b5e6-96231b3b80d8
----
- CMakeLists.txt | 13 ++++++++++---
- 1 file changed, 10 insertions(+), 3 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 66ebeaeeaa..514b17fb3c 100644
---- a/tools/extra/CMakeLists.txt
-+++ b/tools/extra/CMakeLists.txt
-@@ -1,6 +1,13 @@
--option(CLANGD_BUILD_XPC "Build XPC Support For Clangd." OFF)
--if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
--  set(CLANGD_BUILD_XPC ON CACHE BOOL "" FORCE)
-+if (NOT DEFINED CLANGD_BUILD_XPC)
-+  if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
-+    set(CLANGD_BUILD_XPC_DEFAULT ON)
-+  else ()
-+    set(CLANGD_BUILD_XPC_DEFAULT OFF)
-+  endif ()
-+
-+  set(CLANGD_BUILD_XPC ${CLANGD_BUILD_XPC_DEFAULT} CACHE BOOL "Build XPC Support For Clangd." FORCE)
-+
-+  unset(CLANGD_BUILD_XPC_DEFAULT)
- endif ()
- 
- add_subdirectory(clang-apply-replacements)
\ No newline at end of file
diff --git a/pkgs/development/compilers/llvm/8/compiler-rt/armv7l.patch b/pkgs/development/compilers/llvm/8/compiler-rt/armv7l.patch
deleted file mode 100644
index 89d7f1aec918..000000000000
--- a/pkgs/development/compilers/llvm/8/compiler-rt/armv7l.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff -ur compiler-rt-7.1.0.src/cmake/builtin-config-ix.cmake compiler-rt-7.1.0.src-patched/cmake/builtin-config-ix.cmake
---- compiler-rt-7.1.0.src/cmake/builtin-config-ix.cmake	2018-05-25 06:36:27.000000000 +0900
-+++ compiler-rt-7.1.0.src-patched/cmake/builtin-config-ix.cmake	2020-05-09 20:26:33.030608692 +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-7.1.0.src/lib/builtins/CMakeLists.txt compiler-rt-7.1.0.src-patched/lib/builtins/CMakeLists.txt
---- compiler-rt-7.1.0.src/lib/builtins/CMakeLists.txt	2018-07-31 03:18:59.000000000 +0900
-+++ compiler-rt-7.1.0.src-patched/lib/builtins/CMakeLists.txt	2020-05-09 20:27:38.893409318 +0900
-@@ -453,6 +453,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
-@@ -563,12 +564,12 @@
-       set(_arch ${arch})
-       if("${arch}" STREQUAL "armv6m")
-         set(_arch "arm|armv6m")
--      elseif("${arch}" MATCHES "^(armhf|armv7|armv7s|armv7k|armv7m|armv7em)$")
-+      elseif("${arch}" MATCHES "^(armhf|armv7|armv7s|armv7k|armv7l|armv7m|armv7em)$")
-         set(_arch "arm")
-       endif()
- 
-       # 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/pkgs/development/compilers/llvm/8/compiler-rt/crtbegin-and-end.patch b/pkgs/development/compilers/llvm/8/compiler-rt/crtbegin-and-end.patch
deleted file mode 100644
index e63be181f95c..000000000000
--- a/pkgs/development/compilers/llvm/8/compiler-rt/crtbegin-and-end.patch
+++ /dev/null
@@ -1,595 +0,0 @@
-Get crtbegin and crtend without compiler GCC! PR is at https://reviews.llvm.org/D28791
-
-Index: compiler-rt/CMakeLists.txt
-===================================================================
---- compiler-rt/CMakeLists.txt
-+++ compiler-rt/CMakeLists.txt
-@@ -29,6 +29,8 @@
- 
- option(COMPILER_RT_BUILD_BUILTINS "Build builtins" ON)
- mark_as_advanced(COMPILER_RT_BUILD_BUILTINS)
-+option(COMPILER_RT_BUILD_CRT "Build crtbegin.o/crtend.o" ON)
-+mark_as_advanced(COMPILER_RT_BUILD_CRT)
- option(COMPILER_RT_BUILD_SANITIZERS "Build sanitizers" ON)
- mark_as_advanced(COMPILER_RT_BUILD_SANITIZERS)
- option(COMPILER_RT_BUILD_XRAY "Build xray" ON)
-Index: compiler-rt/cmake/Modules/AddCompilerRT.cmake
-===================================================================
---- compiler-rt/cmake/Modules/AddCompilerRT.cmake
-+++ compiler-rt/cmake/Modules/AddCompilerRT.cmake
-@@ -132,7 +132,7 @@
- # Adds static or shared runtime for a list of architectures and operating
- # systems and puts it in the proper directory in the build and install trees.
- # add_compiler_rt_runtime(<name>
--#                         {STATIC|SHARED}
-+#                         {OBJECT|STATIC|SHARED}
- #                         ARCHS <architectures>
- #                         OS <os list>
- #                         SOURCES <source files>
-@@ -144,8 +144,8 @@
- #                         PARENT_TARGET <convenience parent target>
- #                         ADDITIONAL_HEADERS <header files>)
- function(add_compiler_rt_runtime name type)
--  if(NOT type MATCHES "^(STATIC|SHARED)$")
--    message(FATAL_ERROR "type argument must be STATIC or SHARED")
-+  if(NOT type MATCHES "^(OBJECT|STATIC|SHARED)$")
-+    message(FATAL_ERROR "type argument must be OBJECT, STATIC or SHARED")
-     return()
-   endif()
-   cmake_parse_arguments(LIB
-@@ -204,7 +204,10 @@
-         message(FATAL_ERROR "Architecture ${arch} can't be targeted")
-         return()
-       endif()
--      if(type STREQUAL "STATIC")
-+      if(type STREQUAL "OBJECT")
-+        set(libname "${name}-${arch}")
-+        set(output_name_${libname} ${libname}${COMPILER_RT_OS_SUFFIX})
-+      elseif(type STREQUAL "STATIC")
-         set(libname "${name}-${arch}")
-         set_output_name(output_name_${libname} ${name} ${arch})
-       else()
-@@ -270,12 +273,34 @@
-       set(COMPONENT_OPTION COMPONENT ${libname})
-     endif()
- 
--    add_library(${libname} ${type} ${sources_${libname}})
--    set_target_compile_flags(${libname} ${extra_cflags_${libname}})
--    set_target_link_flags(${libname} ${extra_link_flags_${libname}})
--    set_property(TARGET ${libname} APPEND PROPERTY
--                COMPILE_DEFINITIONS ${LIB_DEFS})
--    set_target_output_directories(${libname} ${output_dir_${libname}})
-+    if(type STREQUAL "OBJECT")
-+      string(TOUPPER ${CMAKE_BUILD_TYPE} config)
-+      get_property(cflags SOURCE ${sources_${libname}} PROPERTY COMPILE_FLAGS)
-+      separate_arguments(cflags)
-+      add_custom_command(
-+          OUTPUT ${output_dir_${libname}}/${libname}.o
-+          COMMAND ${CMAKE_C_COMPILER} ${sources_${libname}} ${cflags} ${extra_cflags_${libname}} -c -o ${output_dir_${libname}}/${libname}.o
-+          DEPENDS ${sources_${libname}}
-+          COMMENT "Building C object ${libname}.o")
-+      add_custom_target(${libname} DEPENDS ${output_dir_${libname}}/${libname}.o)
-+      install(FILES ${output_dir_${libname}}/${libname}.o
-+        DESTINATION ${install_dir_${libname}}
-+        ${COMPONENT_OPTION})
-+    else()
-+      add_library(${libname} ${type} ${sources_${libname}})
-+      set_target_compile_flags(${libname} ${extra_cflags_${libname}})
-+      set_target_link_flags(${libname} ${extra_link_flags_${libname}})
-+      set_property(TARGET ${libname} APPEND PROPERTY
-+                   COMPILE_DEFINITIONS ${LIB_DEFS})
-+      set_target_output_directories(${libname} ${output_dir_${libname}})
-+      install(TARGETS ${libname}
-+        ARCHIVE DESTINATION ${install_dir_${libname}}
-+                ${COMPONENT_OPTION}
-+        LIBRARY DESTINATION ${install_dir_${libname}}
-+                ${COMPONENT_OPTION}
-+        RUNTIME DESTINATION ${install_dir_${libname}}
-+                ${COMPONENT_OPTION})
-+    endif()
-     set_target_properties(${libname} PROPERTIES
-         OUTPUT_NAME ${output_name_${libname}})
-     set_target_properties(${libname} PROPERTIES FOLDER "Compiler-RT Runtime")
-@@ -299,13 +324,6 @@
-         )
-       endif()
-     endif()
--    install(TARGETS ${libname}
--      ARCHIVE DESTINATION ${install_dir_${libname}}
--              ${COMPONENT_OPTION}
--      LIBRARY DESTINATION ${install_dir_${libname}}
--              ${COMPONENT_OPTION}
--      RUNTIME DESTINATION ${install_dir_${libname}}
--              ${COMPONENT_OPTION})
- 
-     # We only want to generate per-library install targets if you aren't using
-     # an IDE because the extra targets get cluttered in IDEs.
-Index: compiler-rt/cmake/config-ix.cmake
-===================================================================
---- compiler-rt/cmake/config-ix.cmake
-+++ compiler-rt/cmake/config-ix.cmake
-@@ -227,6 +227,7 @@
-     ${ARM32} ${ARM64} ${MIPS32} ${MIPS64} ${S390X})
- set(ALL_ASAN_SUPPORTED_ARCH ${X86} ${X86_64} ${ARM32} ${ARM64}
-     ${MIPS32} ${MIPS64} ${PPC64} ${S390X})
-+set(ALL_CRT_SUPPORTED_ARCH ${X86} ${X86_64} ${ARM32} ${ARM64})
- set(ALL_DFSAN_SUPPORTED_ARCH ${X86_64} ${MIPS64} ${ARM64})
- set(ALL_FUZZER_SUPPORTED_ARCH ${X86_64} ${ARM64})
- 
-@@ -474,6 +475,7 @@
-     SANITIZER_COMMON_SUPPORTED_ARCH)
- 
- else()
-+  filter_available_targets(CRT_SUPPORTED_ARCH ${ALL_CRT_SUPPORTED_ARCH})
-   # Architectures supported by compiler-rt libraries.
-   filter_available_targets(SANITIZER_COMMON_SUPPORTED_ARCH
-     ${ALL_SANITIZER_COMMON_SUPPORTED_ARCH})
-@@ -563,6 +565,12 @@
- 
- # TODO: Add builtins support.
- 
-+if (CRT_SUPPORTED_ARCH AND OS_NAME MATCHES "Linux")
-+  set(COMPILER_RT_HAS_CRT TRUE)
-+else()
-+  set(COMPILER_RT_HAS_CRT FALSE)
-+endif()
-+
- if (COMPILER_RT_HAS_SANITIZER_COMMON AND DFSAN_SUPPORTED_ARCH AND
-     OS_NAME MATCHES "Linux")
-   set(COMPILER_RT_HAS_DFSAN TRUE)
-Index: compiler-rt/lib/CMakeLists.txt
-===================================================================
---- compiler-rt/lib/CMakeLists.txt
-+++ compiler-rt/lib/CMakeLists.txt
-@@ -17,6 +17,10 @@
-   add_subdirectory(builtins)
- endif()
- 
-+if(COMPILER_RT_BUILD_CRT)
-+  add_subdirectory(crt)
-+endif()
-+
- function(compiler_rt_build_runtime runtime)
-   string(TOUPPER ${runtime} runtime_uppercase)
-   if(COMPILER_RT_HAS_${runtime_uppercase})
-Index: compiler-rt/lib/crt/CMakeLists.txt
-===================================================================
---- /dev/null
-+++ compiler-rt/lib/crt/CMakeLists.txt
-@@ -0,0 +1,102 @@
-+add_compiler_rt_component(crt)
-+
-+function(check_cxx_section_exists section output)
-+  cmake_parse_arguments(ARG "" "" "SOURCE;FLAGS" ${ARGN})
-+  if(NOT ARG_SOURCE)
-+    set(ARG_SOURCE "int main() { return 0; }\n")
-+  endif()
-+
-+  string(RANDOM TARGET_NAME)
-+  set(TARGET_NAME "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/cmTC_${TARGET_NAME}.dir")
-+  file(MAKE_DIRECTORY ${TARGET_NAME})
-+
-+  file(WRITE "${TARGET_NAME}/CheckSectionExists.c" "${ARG_SOURCE}\n")
-+
-+  string(REGEX MATCHALL "<[A-Za-z0-9_]*>" substitutions
-+         ${CMAKE_C_COMPILE_OBJECT})
-+
-+  set(try_compile_flags "${ARG_FLAGS}")
-+  if(CMAKE_C_COMPILER_ID MATCHES Clang AND CMAKE_C_COMPILER_TARGET)
-+    list(APPEND try_compile_flags "-target ${CMAKE_C_COMPILER_TARGET}")
-+  endif()
-+
-+  string(REPLACE ";" " " extra_flags "${try_compile_flags}")
-+
-+  set(test_compile_command "${CMAKE_C_COMPILE_OBJECT}")
-+  foreach(substitution ${substitutions})
-+    if(substitution STREQUAL "<CMAKE_C_COMPILER>")
-+      string(REPLACE "<CMAKE_C_COMPILER>"
-+             "${CMAKE_C_COMPILER}" test_compile_command ${test_compile_command})
-+    elseif(substitution STREQUAL "<OBJECT>")
-+      string(REPLACE "<OBJECT>" "${TARGET_NAME}/CheckSectionExists.o"
-+             test_compile_command ${test_compile_command})
-+    elseif(substitution STREQUAL "<SOURCE>")
-+      string(REPLACE "<SOURCE>" "${TARGET_NAME}/CheckSectionExists.c"
-+             test_compile_command ${test_compile_command})
-+    elseif(substitution STREQUAL "<FLAGS>")
-+      string(REPLACE "<FLAGS>" "${CMAKE_C_FLAGS} ${extra_flags}"
-+             test_compile_command ${test_compile_command})
-+    else()
-+      string(REPLACE "${substitution}" "" test_compile_command
-+             ${test_compile_command})
-+    endif()
-+  endforeach()
-+
-+  string(REPLACE " " ";" test_compile_command "${test_compile_command}")
-+
-+  execute_process(
-+    COMMAND ${test_compile_command}
-+    RESULT_VARIABLE TEST_RESULT
-+    OUTPUT_VARIABLE TEST_OUTPUT
-+    ERROR_VARIABLE TEST_ERROR
-+  )
-+
-+  execute_process(
-+    COMMAND ${CMAKE_OBJDUMP} -h "${TARGET_NAME}/CheckSectionExists.o"
-+    RESULT_VARIABLE CHECK_RESULT
-+    OUTPUT_VARIABLE CHECK_OUTPUT
-+    ERROR_VARIABLE CHECK_ERROR
-+  )
-+  string(FIND "${CHECK_OUTPUT}" "${section}" SECTION_FOUND)
-+
-+  if(NOT SECTION_FOUND EQUAL -1)
-+    set(${output} TRUE PARENT_SCOPE)
-+  else()
-+    set(${output} FALSE PARENT_SCOPE)
-+  endif()
-+
-+  file(REMOVE_RECURSE ${TARGET_NAME})
-+endfunction()
-+
-+check_cxx_section_exists(".init_array" COMPILER_RT_HAS_INITFINI_ARRAY
-+  SOURCE "__attribute__((constructor)) void f() {}\nint main() { return 0; }\n")
-+
-+append_list_if(COMPILER_RT_HAS_INITFINI_ARRAY -DCRT_HAS_INITFINI_ARRAY CRT_CFLAGS)
-+append_list_if(COMPILER_RT_HAS_FPIC_FLAG -fPIC CRT_CFLAGS)
-+
-+foreach(arch ${CRT_SUPPORTED_ARCH})
-+  add_compiler_rt_runtime(clang_rt.crtbegin
-+    OBJECT
-+    ARCHS ${arch}
-+    SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/crtbegin.c
-+    CFLAGS ${CRT_CFLAGS}
-+    PARENT_TARGET crt)
-+  add_compiler_rt_runtime(clang_rt.crtbegin_shared
-+    OBJECT
-+    ARCHS ${arch}
-+    SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/crtbegin.c
-+    CFLAGS ${CRT_CFLAGS} -DCRT_SHARED
-+    PARENT_TARGET crt)
-+  add_compiler_rt_runtime(clang_rt.crtend
-+    OBJECT
-+    ARCHS ${arch}
-+    SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/crtend.c
-+    CFLAGS ${CRT_CFLAGS}
-+    PARENT_TARGET crt)
-+  add_compiler_rt_runtime(clang_rt.crtend_shared
-+    OBJECT
-+    ARCHS ${arch}
-+    SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/crtend.c
-+    CFLAGS ${CRT_CFLAGS} -DCRT_SHARED
-+    PARENT_TARGET crt)
-+endforeach()
-Index: compiler-rt/lib/crt/crtbegin.c
-===================================================================
---- /dev/null
-+++ compiler-rt/lib/crt/crtbegin.c
-@@ -0,0 +1,108 @@
-+/* ===-- crtbegin.c - Start of constructors and destructors ----------------===
-+ *
-+ *      	       The LLVM Compiler Infrastructure
-+ *
-+ * This file is dual licensed under the MIT and the University of Illinois Open
-+ * Source Licenses. See LICENSE.TXT for details.
-+ *
-+ * ===----------------------------------------------------------------------===
-+ */
-+
-+#include <stddef.h>
-+
-+__attribute__((visibility("hidden")))
-+#ifdef CRT_SHARED
-+void *__dso_handle = &__dso_handle;
-+#else
-+void *__dso_handle = (void *)0;
-+#endif
-+
-+static long __EH_FRAME_LIST__[]
-+    __attribute__((section(".eh_frame"), aligned(sizeof(void *)))) = {};
-+
-+extern void __register_frame_info(const void *, void *) __attribute__((weak));
-+extern void *__deregister_frame_info(const void *) __attribute__((weak));
-+
-+#ifndef CRT_HAS_INITFINI_ARRAY
-+typedef void (*fp)(void);
-+
-+static fp __CTOR_LIST__[]
-+    __attribute__((section(".ctors"), aligned(sizeof(fp)), used)) = {(fp)-1};
-+extern fp __CTOR_LIST_END__[];
-+#endif
-+
-+#ifdef CRT_SHARED
-+extern void __cxa_finalize(void *) __attribute__((weak));
-+#endif
-+
-+static void __attribute__((used)) __do_init() {
-+  static _Bool __initialized;
-+  if (__builtin_expect(__initialized, 0))
-+    return;
-+  __initialized = 1;
-+
-+  static struct { void *p[8]; } __object;
-+  if (__register_frame_info)
-+    __register_frame_info(__EH_FRAME_LIST__, &__object);
-+
-+#ifndef CRT_HAS_INITFINI_ARRAY
-+  const size_t n = __CTOR_LIST_END__ - __CTOR_LIST__ - 1;
-+  for (size_t i = n; i >= 1; i--) __CTOR_LIST__[i]();
-+#endif
-+}
-+
-+#ifdef CRT_HAS_INITFINI_ARRAY
-+__attribute__((section(".init_array"),
-+               used)) static void (*__init)(void) = __do_init;
-+#else  // CRT_HAS_INITFINI_ARRAY
-+#if defined(__i386__) || defined(__x86_64__)
-+asm(".pushsection .init,\"ax\",@progbits\n\t"
-+    "call " __USER_LABEL_PREFIX__ "__do_init\n\t"
-+    ".popsection");
-+#elif defined(__arm__)
-+asm(".pushsection .init,\"ax\",%progbits\n\t"
-+    "bl " __USER_LABEL_PREFIX__ "__do_init\n\t"
-+    ".popsection");
-+#endif  // CRT_HAS_INITFINI_ARRAY
-+#endif
-+
-+#ifndef CRT_HAS_INITFINI_ARRAY
-+static fp __DTOR_LIST__[]
-+    __attribute__((section(".dtors"), aligned(sizeof(fp)), used)) = {(fp)-1};
-+extern fp __DTOR_LIST_END__[];
-+#endif
-+
-+static void __attribute__((used)) __do_fini() {
-+  static _Bool __finalized;
-+  if (__builtin_expect(__finalized, 0))
-+    return;
-+  __finalized = 1;
-+
-+#ifdef CRT_SHARED
-+  if (__cxa_finalize)
-+    __cxa_finalize(__dso_handle);
-+#endif
-+
-+#ifndef CRT_HAS_INITFINI_ARRAY
-+  if (__deregister_frame_info)
-+    __deregister_frame_info(__EH_FRAME_LIST__);
-+
-+  const size_t n = __DTOR_LIST_END__ - __DTOR_LIST__ - 1;
-+  for (size_t i = 1; i < n; i++) __DTOR_LIST__[i]();
-+#endif
-+}
-+
-+#ifdef CRT_HAS_INITFINI_ARRAY
-+__attribute__((section(".fini_array"),
-+               used)) static void (*__fini)(void) = __do_fini;
-+#else  // CRT_HAS_INITFINI_ARRAY
-+#if defined(__i386__) || defined(__x86_64__)
-+asm(".pushsection .fini,\"ax\",@progbits\n\t"
-+    "call " __USER_LABEL_PREFIX__ "__do_fini\n\t"
-+    ".popsection");
-+#elif defined(__arm__)
-+asm(".pushsection .fini,\"ax\",%progbits\n\t"
-+    "bl " __USER_LABEL_PREFIX__ "__do_fini\n\t"
-+    ".popsection");
-+#endif
-+#endif  // CRT_HAS_INIT_FINI_ARRAY
-Index: compiler-rt/lib/crt/crtend.c
-===================================================================
---- /dev/null
-+++ compiler-rt/lib/crt/crtend.c
-@@ -0,0 +1,24 @@
-+/* ===-- crtend.c - End of constructors and destructors --------------------===
-+ *
-+ *      	       The LLVM Compiler Infrastructure
-+ *
-+ * This file is dual licensed under the MIT and the University of Illinois Open
-+ * Source Licenses. See LICENSE.TXT for details.
-+ *
-+ * ===----------------------------------------------------------------------===
-+ */
-+
-+#include <stdint.h>
-+
-+// Put 4-byte zero which is the length field in FDE at the end as a terminator.
-+const int32_t __EH_FRAME_LIST_END__[]
-+    __attribute__((section(".eh_frame"), aligned(sizeof(int32_t)),
-+                   visibility("hidden"), used)) = {0};
-+
-+#ifndef CRT_HAS_INITFINI_ARRAY
-+typedef void (*fp)(void);
-+fp __CTOR_LIST_END__[]
-+    __attribute__((section(".ctors"), visibility("hidden"), used)) = {0};
-+fp __DTOR_LIST_END__[]
-+    __attribute__((section(".dtors"), visibility("hidden"), used)) = {0};
-+#endif
-Index: compiler-rt/test/CMakeLists.txt
-===================================================================
---- compiler-rt/test/CMakeLists.txt
-+++ compiler-rt/test/CMakeLists.txt
-@@ -73,6 +73,9 @@
-   if(COMPILER_RT_BUILD_XRAY)
-     compiler_rt_test_runtime(xray)
-   endif()
-+  if(COMPILER_RT_HAS_CRT)
-+    add_subdirectory(crt)
-+  endif()
-   # ShadowCallStack does not yet provide a runtime with compiler-rt, the tests
-   # include their own minimal runtime
-   add_subdirectory(shadowcallstack)
-Index: compiler-rt/test/crt/CMakeLists.txt
-===================================================================
---- /dev/null
-+++ compiler-rt/test/crt/CMakeLists.txt
-@@ -0,0 +1,31 @@
-+set(CRT_LIT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
-+
-+set(CRT_TESTSUITES)
-+
-+set(CRT_TEST_DEPS "")
-+
-+if(NOT COMPILER_RT_STANDALONE_BUILD AND COMPILER_RT_BUILD_CRT AND
-+   COMPILER_RT_HAS_CRT)
-+  list(APPEND CRT_TEST_DEPS crt)
-+endif()
-+
-+set(CRT_TEST_ARCH ${CRT_SUPPORTED_ARCH})
-+if (COMPILER_RT_BUILD_CRT AND COMPILER_RT_HAS_CRT)
-+  foreach(arch ${CRT_TEST_ARCH})
-+    set(CRT_TEST_TARGET_ARCH ${arch})
-+    string(TOLOWER "-${arch}-${OS_NAME}" CRT_TEST_CONFIG_SUFFIX)
-+    get_test_cc_for_arch(${arch} CRT_TEST_TARGET_CC CRT_TEST_TARGET_CFLAGS)
-+    string(TOUPPER ${arch} ARCH_UPPER_CASE)
-+    set(CONFIG_NAME ${ARCH_UPPER_CASE}${OS_NAME}Config)
-+
-+    configure_lit_site_cfg(
-+      ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
-+      ${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME}/lit.site.cfg)
-+    list(APPEND CRT_TESTSUITES ${CMAKE_CURRENT_BINARY_DIR}/${CONFIG_NAME})
-+  endforeach()
-+endif()
-+
-+add_lit_testsuite(check-crt "Running the CRT tests"
-+  ${CRT_TESTSUITES}
-+  DEPENDS ${CRT_TEST_DEPS})
-+set_target_properties(check-crt PROPERTIES FOLDER "Compiler-RT Misc")
-Index: compiler-rt/test/crt/dso_handle.cpp
-===================================================================
---- /dev/null
-+++ compiler-rt/test/crt/dso_handle.cpp
-@@ -0,0 +1,33 @@
-+// RUN: %clangxx -g -DCRT_SHARED -c %s -fPIC -o %tshared.o
-+// RUN: %clangxx -g -c %s -fPIC -o %t.o
-+// RUN: %clangxx -g -shared -o %t.so -nostdlib %crti %shared_crtbegin %tshared.o %libstdcxx -lc -lm -lgcc_s %shared_crtend %crtn
-+// RUN: %clangxx -g -o %t -nostdlib %crt1 %crti %crtbegin %t.o %libstdcxx -lc -lm %libgcc %t.so %crtend %crtn
-+// RUN: %run %t 2>&1 | FileCheck %s
-+
-+#include <stdio.h>
-+
-+// CHECK: 1
-+// CHECK-NEXT: ~A()
-+
-+#ifdef CRT_SHARED
-+bool G;
-+void C() {
-+  printf("%d\n", G);
-+}
-+
-+struct A {
-+  A() { G = true; }
-+  ~A() {
-+    printf("~A()\n");
-+  }
-+};
-+
-+A a;
-+#else
-+void C();
-+
-+int main() {
-+  C();
-+  return 0;
-+}
-+#endif
-Index: compiler-rt/test/crt/lit.cfg
-===================================================================
---- /dev/null
-+++ compiler-rt/test/crt/lit.cfg
-@@ -0,0 +1,80 @@
-+# -*- Python -*-
-+
-+import os
-+import subprocess
-+
-+# Setup config name.
-+config.name = 'CRT' + config.name_suffix
-+
-+# Setup source root.
-+config.test_source_root = os.path.dirname(__file__)
-+
-+
-+def get_library_path(file):
-+    cmd = subprocess.Popen([config.clang.strip(),
-+                            config.target_cflags.strip(),
-+                            '-print-file-name=%s' % file],
-+                           stdout=subprocess.PIPE,
-+                           env=config.environment)
-+    if not cmd.stdout:
-+      lit_config.fatal("Couldn't find the library path for '%s'" % file)
-+    dir = cmd.stdout.read().strip()
-+    if sys.platform in ['win32'] and execute_external:
-+        # Don't pass dosish path separator to msys bash.exe.
-+        dir = dir.replace('\\', '/')
-+    # Ensure the result is an ascii string, across Python2.5+ - Python3.
-+    return str(dir.decode('ascii'))
-+
-+
-+def get_libgcc_file_name():
-+    cmd = subprocess.Popen([config.clang.strip(),
-+                            config.target_cflags.strip(),
-+                            '-print-libgcc-file-name'],
-+                           stdout=subprocess.PIPE,
-+                           env=config.environment)
-+    if not cmd.stdout:
-+      lit_config.fatal("Couldn't find the library path for '%s'" % file)
-+    dir = cmd.stdout.read().strip()
-+    if sys.platform in ['win32'] and execute_external:
-+        # Don't pass dosish path separator to msys bash.exe.
-+        dir = dir.replace('\\', '/')
-+    # Ensure the result is an ascii string, across Python2.5+ - Python3.
-+    return str(dir.decode('ascii'))
-+
-+
-+def build_invocation(compile_flags):
-+    return ' ' + ' '.join([config.clang] + compile_flags) + ' '
-+
-+
-+# Setup substitutions.
-+config.substitutions.append(
-+    ('%clang ', build_invocation([config.target_cflags])))
-+config.substitutions.append(
-+    ('%clangxx ',
-+     build_invocation(config.cxx_mode_flags + [config.target_cflags])))
-+
-+base_lib = os.path.join(
-+    config.compiler_rt_libdir, "clang_rt.%%s-%s.o" % config.target_arch)
-+config.substitutions.append(('%crtbegin', base_lib % "crtbegin"))
-+config.substitutions.append(('%shared_crtbegin', base_lib % "crtbegin_shared"))
-+config.substitutions.append(('%crtend', base_lib % "crtend"))
-+config.substitutions.append(('%shared_crtend', base_lib % "crtend_shared"))
-+
-+config.substitutions.append(
-+    ('%crt1', get_library_path('crt1.o')))
-+config.substitutions.append(
-+    ('%crti', get_library_path('crti.o')))
-+config.substitutions.append(
-+    ('%crtn', get_library_path('crtn.o')))
-+
-+config.substitutions.append(
-+    ('%libgcc', get_libgcc_file_name()))
-+
-+config.substitutions.append(
-+    ('%libstdcxx', '-l' + config.sanitizer_cxx_lib.lstrip('lib')))
-+
-+# Default test suffixes.
-+config.suffixes = ['.c', '.cc', '.cpp']
-+
-+if config.host_os not in ['Linux']:
-+    config.unsupported = True
-Index: compiler-rt/test/crt/lit.site.cfg.in
-===================================================================
---- /dev/null
-+++ compiler-rt/test/crt/lit.site.cfg.in
-@@ -0,0 +1,14 @@
-+@LIT_SITE_CFG_IN_HEADER@
-+
-+# Tool-specific config options.
-+config.name_suffix = "@CRT_TEST_CONFIG_SUFFIX@"
-+config.crt_lit_source_dir = "@CRT_LIT_SOURCE_DIR@"
-+config.target_cflags = "@CRT_TEST_TARGET_CFLAGS@"
-+config.target_arch = "@CRT_TEST_TARGET_ARCH@"
-+config.sanitizer_cxx_lib = "@SANITIZER_TEST_CXX_LIBNAME@"
-+
-+# Load common config for all compiler-rt lit tests
-+lit_config.load_config(config, "@COMPILER_RT_BINARY_DIR@/test/lit.common.configured")
-+
-+# Load tool-specific config that would do the real work.
-+lit_config.load_config(config, "@CRT_LIT_SOURCE_DIR@/lit.cfg")
diff --git a/pkgs/development/compilers/llvm/8/compiler-rt/default.nix b/pkgs/development/compilers/llvm/8/compiler-rt/default.nix
deleted file mode 100644
index 26cb5aa30617..000000000000
--- a/pkgs/development/compilers/llvm/8/compiler-rt/default.nix
+++ /dev/null
@@ -1,117 +0,0 @@
-{ lib, stdenv, llvm_meta, version, fetch, cmake, python3, libllvm, libcxxabi
-, doFakeLibgcc ? stdenv.hostPlatform.isFreeBSD
-}:
-
-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;
-  src = fetch "compiler-rt" "0dqqf8f930l8gag4d9qjgn1n0pj0nbv2anviqqhdi1rkhas8z0hi";
-
-  nativeBuildInputs = [ cmake python3 libllvm.dev ];
-  buildInputs = lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
-
-  env.NIX_CFLAGS_COMPILE = toString [
-    "-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"
-  ] ++ lib.optionals (useLLVM || bareMetal) [
-    "-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) [
-    "-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) [
-    # The compiler-rt build infrastructure sniffs supported platforms on Darwin
-    # and finds i386;x86_64;x86_64h. We only build for x86_64, so linking fails
-    # when it tries to use libc++ and libc++api for i386.
-    "-DDARWIN_osx_ARCHS=${stdenv.hostPlatform.darwinArch}"
-  ];
-
-  outputs = [ "out" "dev" ];
-
-  patches = [
-    # https://github.com/llvm/llvm-project/commit/947f9692440836dcb8d88b74b69dd379d85974ce
-    ../../common/compiler-rt/glibc.patch
-    ../../common/compiler-rt/7-12-codesign.patch # Revert compiler-rt commit that makes codesign mandatory
-    ./gnu-install-dirs.patch
-    ../../common/compiler-rt/libsanitizer-no-cyclades-9.patch
-  ] ++ lib.optional (useLLVM) ./crtbegin-and-end.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/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>" ""
-  '';
-
-  preConfigure = lib.optionalString (useLLVM && !haveLibc) ''
-    cmakeFlagsArray+=(-DCMAKE_C_FLAGS="-nodefaultlibs -ffreestanding")
-  '';
-
-  # 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
-  '' + lib.optionalString doFakeLibgcc ''
-    ln -s $out/lib/freebsd/libclang_rt.builtins-*.a $out/lib/libgcc.a
-  '';
-
-  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 ];
-    broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64;
-  };
-}
diff --git a/pkgs/development/compilers/llvm/8/compiler-rt/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/8/compiler-rt/gnu-install-dirs.patch
deleted file mode 100644
index a25fa90f9800..000000000000
--- a/pkgs/development/compilers/llvm/8/compiler-rt/gnu-install-dirs.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-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/pkgs/development/compilers/llvm/8/default.nix b/pkgs/development/compilers/llvm/8/default.nix
deleted file mode 100644
index 83e19e7e90a2..000000000000
--- a/pkgs/development/compilers/llvm/8/default.nix
+++ /dev/null
@@ -1,273 +0,0 @@
-{ lowPrio, newScope, pkgs, lib, stdenv, cmake
-, preLibcCrossHeaders
-, libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith
-, buildLlvmTools # tools, but from the previous stage, for cross
-, targetLlvmLibraries # libraries, but from the next stage, for cross
-, targetLlvm
-# This is the default binutils, but with *this* version of LLD rather
-# than the default LLVM version'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
-  release_version = "8.0.1";
-  version = release_version; # differentiating these is important for rc's
-
-  fetch = name: sha256: fetchurl {
-    url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-${release_version}/${name}-${version}.src.tar.xz";
-    inherit sha256;
-  };
-
-  clang-tools-extra_src = fetch "clang-tools-extra" "1qf3097bc5ia8p6cpmbx985rjr3yaah5s8fc0nv7pw742yv7jw8q";
-
-  inherit (import ../common/common-let.nix { inherit lib release_version; }) llvm_meta;
-
-  tools = lib.makeExtensible (tools: let
-    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}/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 `outputSpecified` to get the expected behavior e.g. of lib.get*
-    llvm = tools.libllvm;
-
-    libllvm-polly = callPackage ./llvm {
-      inherit llvm_meta;
-      enablePolly = true;
-    };
-
-    llvm-polly = tools.libllvm-polly.lib // { outputSpecified = false; };
-
-    libclang = callPackage ./clang {
-      inherit clang-tools-extra_src llvm_meta;
-    };
-
-    clang-unwrapped = tools.libclang;
-
-    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.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
-    });
-
-    # pick clang appropriate for package set we are targeting
-    clang =
-      /**/ if stdenv.targetPlatform.libc == null then tools.clangNoLibc
-      else if stdenv.targetPlatform.useLLVM or false then tools.clangUseLLVM
-      else if (pkgs.targetPackages.stdenv or 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 = [
-        libcxx.cxxabi
-        targetLlvmLibraries.compiler-rt
-      ];
-      extraBuildCommands = mkExtraBuildCommands cc;
-    };
-
-    lld = callPackage ./lld {
-      inherit llvm_meta;
-    };
-
-    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
-    # 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 ../common/bintools.nix { };
-
-    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 = [
-        libcxx.cxxabi
-        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
-        echo "-L${targetLlvmLibraries.libunwind}/lib" >> $out/nix-support/cc-ldflags
-      '' + 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 fetch; });
-  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 targetLlvm;
-    };
-  });
-  noExtend = extensible: lib.attrsets.removeAttrs extensible [ "extend" ];
-
-in { inherit tools libraries release_version; } // (noExtend libraries) // (noExtend tools)
diff --git a/pkgs/development/compilers/llvm/8/libcxx/default.nix b/pkgs/development/compilers/llvm/8/libcxx/default.nix
deleted file mode 100644
index 967d4b748dbe..000000000000
--- a/pkgs/development/compilers/llvm/8/libcxx/default.nix
+++ /dev/null
@@ -1,92 +0,0 @@
-{ lib, stdenv, llvm_meta, fetch, cmake, python3, fixDarwinDylibNames, version
-, cxxabi ? if stdenv.hostPlatform.isFreeBSD then libcxxrt else libcxxabi
-, libcxxabi, libcxxrt
-, enableShared ? !stdenv.hostPlatform.isStatic
-}:
-
-assert stdenv.isDarwin -> cxxabi.pname == "libcxxabi";
-
-stdenv.mkDerivation {
-  pname = "libcxx";
-  inherit version;
-
-  src = fetch "libcxx" "0y4vc9z36c1zlq15cnibdzxnc1xi5glbc6klnm8a41q3db4541kz";
-
-  postUnpack = ''
-    unpackFile ${libcxxabi.src}
-    export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
-  '';
-
-  outputs = [ "out" "dev" ];
-
-  patches = [
-    ./gnu-install-dirs.patch
-  ] ++ lib.optionals stdenv.hostPlatform.isMusl [
-    ../../libcxx-0001-musl-hacks.patch
-  ];
-
-  # Prevent errors like "error: 'foo' is unavailable: introduced in macOS yy.zz"
-  postPatch = ''
-    substituteInPlace include/__config \
-      --replace "#    define _LIBCPP_USE_AVAILABILITY_APPLE" ""
-  '';
-
-  prePatch = ''
-    substituteInPlace lib/CMakeLists.txt --replace "/usr/lib/libc++" "\''${LIBCXX_LIBCXXABI_LIB_PATH}/libc++"
-  '';
-
-  preConfigure = ''
-    # Get headers from the cxxabi source so we can see private headers not installed by the cxxabi package
-    cmakeFlagsArray=($cmakeFlagsArray -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$LIBCXXABI_INCLUDE_DIR")
-  '' + lib.optionalString stdenv.hostPlatform.isMusl ''
-    patchShebangs utils/cat_files.py
-  '';
-  nativeBuildInputs = [ cmake ]
-    ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) python3
-    ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
-
-  buildInputs = [ cxxabi ];
-
-  cmakeFlags = [
-    "-DLIBCXX_LIBCPPABI_VERSION=2"
-    "-DLIBCXX_CXX_ABI=${cxxabi.pname}"
-  ] ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1"
-    ++ lib.optional (cxxabi.pname == "libcxxabi") "-DLIBCXX_LIBCXXABI_LIB_PATH=${cxxabi}/lib"
-    ++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON"
-    ++ lib.optionals stdenv.hostPlatform.isWasm [
-      "-DLIBCXX_ENABLE_THREADS=OFF"
-      "-DLIBCXX_ENABLE_FILESYSTEM=OFF"
-      "-DLIBCXX_ENABLE_EXCEPTIONS=OFF"
-    ] ++ lib.optional (!enableShared) "-DLIBCXX_ENABLE_SHARED=OFF";
-
-  preInstall = lib.optionalString (stdenv.isDarwin) ''
-    for file in lib/*.dylib; do
-      if [ -L "$file" ]; then continue; fi
-
-      baseName=$(basename $(${stdenv.cc.targetPrefix}otool -D $file | tail -n 1))
-      installName="$out/lib/$baseName"
-      abiName=$(echo "$baseName" | sed -e 's/libc++/libc++abi/')
-
-      for other in $(${stdenv.cc.targetPrefix}otool -L $file | awk '$1 ~ "/libc\\+\\+abi" { print $1 }'); do
-        ${stdenv.cc.targetPrefix}install_name_tool -change $other ${cxxabi}/lib/$abiName $file
-      done
-    done
-  '';
-
-  passthru = {
-    isLLVM = true;
-    inherit cxxabi;
-  };
-
-  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/pkgs/development/compilers/llvm/8/libcxx/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/8/libcxx/gnu-install-dirs.patch
deleted file mode 100644
index 6af403ac86b4..000000000000
--- a/pkgs/development/compilers/llvm/8/libcxx/gnu-install-dirs.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-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/pkgs/development/compilers/llvm/8/libcxxabi/default.nix b/pkgs/development/compilers/llvm/8/libcxxabi/default.nix
deleted file mode 100644
index 885d85b8c3e7..000000000000
--- a/pkgs/development/compilers/llvm/8/libcxxabi/default.nix
+++ /dev/null
@@ -1,85 +0,0 @@
-{ lib, stdenv, llvm_meta, cmake, fetch, libcxx, libunwind, llvm, version
-, enableShared ? !stdenv.hostPlatform.isStatic
-}:
-
-stdenv.mkDerivation {
-  pname = "libcxxabi";
-  inherit version;
-
-  src = fetch "libcxxabi" "1vznz8n1z1h8af0ga451m98lc2hjnv4fyzl71napsvjhvk4g6nxp";
-
-  outputs = [ "out" "dev" ];
-
-  postUnpack = ''
-    unpackFile ${libcxx.src}
-    unpackFile ${llvm.src}
-    cmakeFlags+=" -DLLVM_PATH=$PWD/$(ls -d llvm-*) -DLIBCXXABI_LIBCXX_PATH=$PWD/$(ls -d libcxx-*)"
-  '' + lib.optionalString stdenv.isDarwin ''
-    export TRIPLE=x86_64-apple-darwin
-  '' + lib.optionalString stdenv.hostPlatform.isMusl ''
-    patch -p1 -d $(ls -d libcxx-*) -i ${../../libcxx-0001-musl-hacks.patch}
-  '' + lib.optionalString stdenv.hostPlatform.isWasm ''
-    patch -p1 -d $(ls -d llvm-*) -i ${./wasm.patch}
-  '';
-
-  patches = [
-    ../../common/libcxxabi/no-threads.patch
-    ./gnu-install-dirs.patch
-  ];
-
-  nativeBuildInputs = [ cmake ];
-  buildInputs = lib.optional (!stdenv.isDarwin && !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"
-  ];
-
-  preInstall = lib.optionalString stdenv.isDarwin ''
-    for file in lib/*.dylib; do
-      if [ -L "$file" ]; then continue; fi
-
-      # Fix up the install name. Preserve the basename, just replace the path.
-      installName="$out/lib/$(basename $(${stdenv.cc.targetPrefix}otool -D $file | tail -n 1))"
-
-      # 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
-      ${stdenv.cc.targetPrefix}install_name_tool -id $installName $file
-
-      # cc-wrapper passes '-lc++abi' to all c++ link steps, but that causes
-      # libcxxabi to sometimes link against a different version of itself.
-      # Here we simply make that second reference point to ourselves.
-      for other in $(${stdenv.cc.targetPrefix}otool -L $file | awk '$1 ~ "/libc\\+\\+abi" { print $1 }'); do
-        ${stdenv.cc.targetPrefix}install_name_tool -change $other $installName $file
-      done
-    done
-  '';
-
-  postInstall = ''
-    mkdir -p "$dev/include"
-    install -m 644 ../include/${if stdenv.isDarwin then "*" else "cxxabi.h"} "$dev/include"
-  '';
-
-  passthru = {
-    libName = "c++abi";
-  };
-
-  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/pkgs/development/compilers/llvm/8/libcxxabi/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/8/libcxxabi/gnu-install-dirs.patch
deleted file mode 100644
index 3f924b0efbea..000000000000
--- a/pkgs/development/compilers/llvm/8/libcxxabi/gnu-install-dirs.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-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/pkgs/development/compilers/llvm/8/libunwind/default.nix b/pkgs/development/compilers/llvm/8/libunwind/default.nix
deleted file mode 100644
index 244b5775bdc8..000000000000
--- a/pkgs/development/compilers/llvm/8/libunwind/default.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ lib, stdenv, llvm_meta, version, fetch, cmake, fetchpatch
-, enableShared ? !stdenv.hostPlatform.isStatic
-}:
-
-stdenv.mkDerivation rec {
-  pname = "libunwind";
-  inherit version;
-
-  src = fetch pname "0vhgcgzsb33l83qaikrkj87ypqb48mi607rccczccwiiv8ficw0q";
-
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/llvm-mirror/libunwind/commit/34a45c630d4c79af403661d267db42fbe7de1178.patch";
-      sha256 = "0n0pv6jvcky8pn3srhrf9x5kbnd0d2kia9xlx2g590f5q0bgwfhv";
-    })
-    (fetchpatch {
-      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/pkgs/development/compilers/llvm/8/libunwind/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/8/libunwind/gnu-install-dirs.patch
deleted file mode 100644
index ffabba8137d6..000000000000
--- a/pkgs/development/compilers/llvm/8/libunwind/gnu-install-dirs.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-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/pkgs/development/compilers/llvm/8/lld/default.nix b/pkgs/development/compilers/llvm/8/lld/default.nix
deleted file mode 100644
index 9a3a49db7855..000000000000
--- a/pkgs/development/compilers/llvm/8/lld/default.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-{ lib, stdenv, llvm_meta
-, buildLlvmTools
-, fetch
-, cmake
-, libxml2
-, libllvm
-, version
-}:
-
-stdenv.mkDerivation rec {
-  pname = "lld";
-  inherit version;
-
-  src = fetch pname "121xhxrlvwy3k5nf6p1wv31whxlb635ssfkci8z93mwv4ja1xflz";
-
-  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"
-  ];
-
-  # Musl's default stack size is too small for lld to be able to link Firefox.
-  LDFLAGS = lib.optionalString stdenv.hostPlatform.isMusl "-Wl,-z,stack-size=2097152";
-
-  outputs = [ "out" "lib" "dev" ];
-
-  meta = llvm_meta // {
-    homepage = "https://lld.llvm.org/";
-    description = "The LLVM linker (unwrapped)";
-    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/pkgs/development/compilers/llvm/8/lld/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/8/lld/gnu-install-dirs.patch
deleted file mode 100644
index acc2d3d47760..000000000000
--- a/pkgs/development/compilers/llvm/8/lld/gnu-install-dirs.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-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/pkgs/development/compilers/llvm/8/lldb/default.nix b/pkgs/development/compilers/llvm/8/lldb/default.nix
deleted file mode 100644
index 4e8cdcdf8ac2..000000000000
--- a/pkgs/development/compilers/llvm/8/lldb/default.nix
+++ /dev/null
@@ -1,109 +0,0 @@
-{ lib, stdenv, llvm_meta
-, fetch
-, cmake
-, zlib
-, ncurses
-, swig
-, which
-, libedit
-, libxml2
-, libllvm
-, libclang
-, python3
-, version
-, darwin
-, makeWrapper
-}:
-
-stdenv.mkDerivation rec {
-  pname = "lldb";
-  inherit version;
-
-  src = fetch "lldb" "1mriw4adrwm6kzabrjr7yqmdiylxd6glf6samd80dp8idnm9p9z8";
-
-  patches = [
-    ./gnu-install-dirs.patch
-
-    # Fix darwin build
-    ./lldb-gdb-remote-no-libcompress.patch
-  ];
-
-  postPatch = ''
-    # Fix up various paths that assume llvm and clang are installed in the same place
-    sed -i 's,".*ClangConfig.cmake","${libclang.dev}/lib/cmake/clang/ClangConfig.cmake",' \
-      cmake/modules/LLDBStandalone.cmake
-    sed -i 's,".*tools/clang/include","${libclang.dev}/include",' \
-      cmake/modules/LLDBStandalone.cmake
-    sed -i 's,"$.LLVM_LIBRARY_DIR.",${libllvm.lib}/lib ${libclang.lib}/lib,' \
-      cmake/modules/LLDBStandalone.cmake
-
-    substituteInPlace tools/CMakeLists.txt \
-      --replace "add_subdirectory(debugserver)" ""
-  '';
-
-  outputs = [ "out" "lib" "dev" ];
-
-  nativeBuildInputs = [
-    cmake python3 which swig makeWrapper
-  ];
-
-  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
-    darwin.apple_sdk.frameworks.DebugSymbols
-  ];
-
-  CXXFLAGS = "-fno-rtti";
-  hardeningDisable = [ "format" ];
-
-  cmakeFlags = [
-    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
-    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
-  ] ++ lib.optionals stdenv.isDarwin [
-    # Building debugserver requires the proprietary libcompression
-    "-DLLDB_NO_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;
-
-  doInstallCheck = true;
-
-  installCheckPhase = ''
-    if [ ! -e "$lib/${python3.sitePackages}/lldb/_lldb.so" ] ; then
-        echo "ERROR: python files not installed where expected!";
-        return 1;
-    fi
-  '';
-
-  postInstall = ''
-    wrapProgram $out/bin/lldb --prefix PYTHONPATH : $lib/${python3.sitePackages}/
-
-    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 -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 = llvm_meta // {
-    broken = stdenv.isDarwin && stdenv.isAarch64;
-    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.
-    '';
-  };
-}
diff --git a/pkgs/development/compilers/llvm/8/lldb/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/8/lldb/gnu-install-dirs.patch
deleted file mode 100644
index 08b6fae654e5..000000000000
--- a/pkgs/development/compilers/llvm/8/lldb/gnu-install-dirs.patch
+++ /dev/null
@@ -1,120 +0,0 @@
-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/CMakeLists.txt b/CMakeLists.txt
-index cdf22c4..d56fc6a 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -146,7 +146,7 @@ if (NOT LLDB_DISABLE_PYTHON)
-                --cfgBldDir=${lldb_scripts_dir}
-                --prefix=${CMAKE_BINARY_DIR}
-                --cmakeBuildConfiguration=${CMAKE_CFG_INTDIR}
--               --lldbLibDir=lib${LLVM_LIBDIR_SUFFIX}
-+               --lldbLibDir=${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
-                ${use_python_wrapper_from_src_dir}
-                ${use_six_py_from_system}
-         VERBATIM
-diff --git a/cmake/modules/LLDBStandalone.cmake b/cmake/modules/LLDBStandalone.cmake
-index a9059dd..d76a47d 100644
---- a/cmake/modules/LLDBStandalone.cmake
-+++ b/cmake/modules/LLDBStandalone.cmake
-@@ -124,7 +124,7 @@ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
-   link_directories("${LLVM_LIBRARY_DIR}")
-
-   set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
--  set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX})
-+  set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_INSTALL_LIBDIR}/lib${LLVM_LIBDIR_SUFFIX})
-   set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX})
-
-   set(LLDB_BUILT_STANDALONE 1)
-diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt
-index 3598247..bd60451 100644
---- a/scripts/CMakeLists.txt
-+++ b/scripts/CMakeLists.txt
-@@ -47,7 +47,7 @@ if(NOT LLDB_BUILD_FRAMEWORK)
-   endif()
-
-   set(SWIG_PYTHON_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${swig_python_subdir})
--  set(SWIG_INSTALL_DIR lib${LLVM_LIBDIR_SUFFIX})
-+  set(SWIG_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
-
-   # Install the LLDB python module
-   install(DIRECTORY ${SWIG_PYTHON_DIR} DESTINATION ${SWIG_INSTALL_DIR})
diff --git a/pkgs/development/compilers/llvm/8/lldb/lldb-gdb-remote-no-libcompress.patch b/pkgs/development/compilers/llvm/8/lldb/lldb-gdb-remote-no-libcompress.patch
deleted file mode 100644
index e04d4ffb1060..000000000000
--- a/pkgs/development/compilers/llvm/8/lldb/lldb-gdb-remote-no-libcompress.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -ru a/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp b/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
---- a/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp	2019-01-09 19:46:09.000000000 -0500
-+++ b/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp	2021-11-27 00:23:08.000000000 -0500
-@@ -42,11 +42,6 @@
- #define DEBUGSERVER_BASENAME "lldb-server"
- #endif
- 
--#if defined(__APPLE__)
--#define HAVE_LIBCOMPRESSION
--#include <compression.h>
--#endif
--
- #if defined(HAVE_LIBZ)
- #include <zlib.h>
- #endif
-diff -ru a/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp b/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
---- a/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp	2018-12-18 18:02:50.000000000 -0500
-+++ b/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp	2021-11-27 00:09:07.000000000 -0500
-@@ -37,11 +37,6 @@
- 
- #include "llvm/ADT/StringSwitch.h"
- 
--#if defined(__APPLE__)
--#define HAVE_LIBCOMPRESSION
--#include <compression.h>
--#endif
--
- using namespace lldb;
- using namespace lldb_private;
- using namespace lldb_private::process_gdb_remote;
diff --git a/pkgs/development/compilers/llvm/8/llvm/default.nix b/pkgs/development/compilers/llvm/8/llvm/default.nix
deleted file mode 100644
index c2f924331098..000000000000
--- a/pkgs/development/compilers/llvm/8/llvm/default.nix
+++ /dev/null
@@ -1,329 +0,0 @@
-{ lib, stdenv, llvm_meta
-, pkgsBuildBuild
-, fetch
-, fetchpatch
-, cmake
-, python3
-, libffi
-, enableGoldPlugin ? libbfd.hasPluginAPI
-, libbfd
-, libpfm
-, libxml2
-, ncurses
-, version
-, release_version
-, zlib
-, buildLlvmTools
-, debugVersion ? false
-, doCheck ? stdenv.isLinux && (!stdenv.isx86_32)
-  && (stdenv.hostPlatform == stdenv.buildPlatform)
-, enableManpages ? false
-, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
-# broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
-# broken for the armv7l builder
-, enablePFM ? stdenv.isLinux && !stdenv.hostPlatform.isAarch
-, enablePolly ? false
-}:
-
-let
-  inherit (lib) optional optionals optionalString;
-
-  # Used when creating a version-suffixed symlink of libLLVM.dylib
-  shortVersion = with lib;
-    concatStringsSep "." (take 1 (splitVersion release_version));
-
-  # Ordinarily we would just the `doCheck` and `checkDeps` functionality
-  # `mkDerivation` gives us to manage our test dependencies (instead of breaking
-  # out `doCheck` as a package level attribute).
-  #
-  # Unfortunately `lit` does not forward `$PYTHONPATH` to children processes, in
-  # particular the children it uses to do feature detection.
-  #
-  # This means that python deps we add to `checkDeps` (which the python
-  # interpreter is made aware of via `$PYTHONPATH` – populated by the python
-  # setup hook) are not picked up by `lit` which causes it to skip tests.
-  #
-  # Adding `python3.withPackages (ps: [ ... ])` to `checkDeps` also doesn't work
-  # because this package is shadowed in `$PATH` by the regular `python3`
-  # package.
-  #
-  # So, we "manually" assemble one python derivation for the package to depend
-  # on, taking into account whether checks are enabled or not:
-  python = if doCheck then
-    let
-      checkDeps = ps: with ps; [ psutil ];
-    in python3.withPackages checkDeps
-  else python3;
-
-in stdenv.mkDerivation (rec {
-  pname = "llvm";
-  inherit version;
-
-  src = fetch "llvm" "1rvm5gqp5v8hfn17kqws3zhk94w4kxndal12bqa0y57p09nply24";
-  polly_src = fetch "polly" "1lfjdz3ilj5xmjxvicd8f5ykybks67ry2pdb777352r3mzlgg8g8";
-
-  unpackPhase = ''
-    unpackFile $src
-    mv llvm-${version}* llvm
-    sourceRoot=$PWD/llvm
-  '' + optionalString enablePolly ''
-    unpackFile $polly_src
-    mv polly-* $sourceRoot/tools/polly
-  '';
-
-  outputs = [ "out" "lib" "dev" "python" ];
-
-  nativeBuildInputs = [ cmake python ]
-    ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
-
-  buildInputs = [ libxml2 libffi ]
-    ++ optional enablePFM libpfm; # exegesis
-
-  propagatedBuildInputs = [ ncurses zlib ];
-
-  patches = [
-    # When cross-compiling we configure llvm-config-native with an approximation
-    # of the flags used for the normal LLVM build. To avoid the need for building
-    # a native libLLVM.so (which would fail) we force llvm-config to be linked
-    # statically against the necessary LLVM components always.
-    ../../llvm-config-link-static.patch
-
-    # Fix missing includes for GCC 10
-    (fetchpatch {
-      url = "https://bugs.gentoo.org/attachment.cgi?id=612792";
-      sha256 = "0rwx6jpqq4xnf4mvfm8v2d4r34y1yi05am0mx5k2d5bha9j64lqg";
-    })
-    ./gnu-install-dirs.patch
-
-    # Fix missing includes for GCC 11
-    (fetchpatch {
-      name = "headers-gcc-11.patch";
-      url = "https://github.com/llvm/llvm-project/commit/b498303066a63a203d24f739b2d2e0e56dca70d1.patch";
-      sha256 = "0nh123kld0dgz2h941lng331dkj3wbm5lfxm375k1f569gv83hlk";
-      stripLen = 1;
-    })
-
-    # Fix invalid std::string(nullptr) for GCC 12
-    (fetchpatch {
-      name = "nvptx-gcc-12.patch";
-      url = "https://github.com/llvm/llvm-project/commit/99e64623ec9b31def9375753491cc6093c831809.patch";
-      sha256 = "0zjfjgavqzi2ypqwqnlvy6flyvdz8hi1anwv0ybwnm2zqixg7za3";
-      stripLen = 1;
-    })
-
-    # Fix musl build.
-    (fetchpatch {
-      url = "https://github.com/llvm/llvm-project/commit/5cd554303ead0f8891eee3cd6d25cb07f5a7bf67.patch";
-      relative = "llvm";
-      hash = "sha256-XPbvNJ45SzjMGlNUgt/IgEvM2dHQpDOe6woUJY+nUYA=";
-    })
-  ] ++ lib.optionals enablePolly [
-    ./gnu-install-dirs-polly.patch
-    # Add missing isl header includess required to build LLVM 8 + Polly with clang 16.
-    (fetchpatch {
-      name = "polly-ppcg-isl-headers.patch";
-      url = "https://repo.or.cz/ppcg.git/patch/098ba285306114dc71497f7b51c357f69c9b4472";
-      hash = "sha256-c9L30rDROYAMbUSuaK9U/ixyFMlH/Sa1n+VgLODzSCQ=";
-      extraPrefix = "tools/polly/lib/External/ppcg/";
-      stripLen = 1;
-    })
-  ];
-
-  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}" ''${extra_libdir})' ""
-  '' + ''
-    # FileSystem permissions tests fail with various special bits
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "Path.cpp" ""
-    rm unittests/Support/Path.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
-  '' + ''
-    patchShebangs test/BugPoint/compile-custom.ll.py
-  '' + ''
-    # Tweak tests to ignore namespace part of type to support
-    # gcc-12: https://gcc.gnu.org/PR103598.
-    # The change below mangles strings like:
-    #    CHECK-NEXT: Starting llvm::Function pass manager run.
-    # to:
-    #    CHECK-NEXT: Starting {{.*}}Function pass manager run.
-    for f in \
-      test/Other/new-pass-manager.ll \
-      test/Other/new-pm-defaults.ll \
-      test/Other/new-pm-lto-defaults.ll \
-      test/Other/new-pm-thinlto-defaults.ll \
-      test/Other/pass-pipeline-parsing.ll \
-      test/Transforms/Inline/cgscc-incremental-invalidate.ll \
-      test/Transforms/Inline/clear-analyses.ll \
-      test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \
-      test/Transforms/SCCP/ipsccp-preserve-analysis.ll \
-      test/Transforms/SCCP/preserve-analysis.ll \
-      test/Transforms/SROA/dead-inst.ll \
-      test/tools/gold/X86/new-pm.ll \
-      ; do
-      echo "PATCH: $f"
-      substituteInPlace $f \
-        --replace 'Starting llvm::' 'Starting {{.*}}' \
-        --replace 'Finished llvm::' 'Finished {{.*}}'
-    done
-  '';
-
-  preConfigure = ''
-    # Workaround for configure flags that need to have spaces
-    cmakeFlagsArray+=(
-      -DLLVM_LIT_ARGS='-svj''${NIX_BUILD_CORES} --no-progress-bar'
-    )
-  '';
-
-  # hacky fix: created binaries need to be run before installation
-  preBuild = ''
-    mkdir -p $out/
-    ln -sv $PWD/lib $out
-  '';
-
-  cmakeBuildType = if debugVersion then "Debug" else "Release";
-
-  cmakeFlags = with stdenv; let
-    # These flags influence llvm-config's BuildVariables.inc in addition to the
-    # general build. We need to make sure these are also passed via
-    # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native
-    # will return different results from the cross llvm-config.
-    #
-    # Some flags don't need to be repassed because LLVM already does so (like
-    # CMAKE_BUILD_TYPE), others are irrelevant to the result.
-    flagsForLlvmConfig = [
-      "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
-      "-DLLVM_ENABLE_RTTI=ON"
-    ] ++ optionals enableSharedLibraries [
-      "-DLLVM_LINK_LLVM_DYLIB=ON"
-    ];
-  in flagsForLlvmConfig ++ [
-    "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
-    "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
-    "-DLLVM_ENABLE_FFI=ON"
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_ENABLE_DUMP=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 (enableGoldPlugin) [
-    "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
-  ] ++ optionals (isDarwin) [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DCAN_TARGET_i386=false"
-  ] ++ optionals ((stdenv.hostPlatform != stdenv.buildPlatform) && !(stdenv.buildPlatform.canExecute stdenv.hostPlatform)) [
-    "-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"
-        ];
-        # We need to repass the custom GNUInstallDirs values, otherwise CMake
-        # will choose them for us, leading to wrong results in llvm-config-native
-        nativeInstallFlags = [
-          "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}"
-          "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin"
-          "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include"
-          "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib"
-          "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec"
-        ];
-      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list="
-      + lib.concatStringsSep ";" (lib.concatLists [
-        flagsForLlvmConfig
-        nativeToolchainFlags
-        nativeInstallFlags
-      ])
-    )
-  ];
-
-  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
-  '';
-
-  inherit doCheck;
-
-  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/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs-polly.patch b/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs-polly.patch
deleted file mode 100644
index 7c477c7df58a..000000000000
--- a/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs-polly.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-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/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs.patch b/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs.patch
deleted file mode 100644
index 027e43f7caca..000000000000
--- a/pkgs/development/compilers/llvm/8/llvm/gnu-install-dirs.patch
+++ /dev/null
@@ -1,394 +0,0 @@
-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/pkgs/development/compilers/llvm/8/openmp/default.nix b/pkgs/development/compilers/llvm/8/openmp/default.nix
deleted file mode 100644
index 32b564ff0ecf..000000000000
--- a/pkgs/development/compilers/llvm/8/openmp/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib
-, stdenv
-, llvm_meta
-, fetch
-, cmake
-, llvm
-, targetLlvm
-, perl
-, version
-}:
-
-stdenv.mkDerivation {
-  pname = "openmp";
-  inherit version;
-
-  src = fetch "openmp" "0b3jlxhqbpyd1nqkpxjfggm5d9va5qpyf7d4i5y7n4a1mlydv19y";
-
-  nativeBuildInputs = [ cmake perl ];
-  buildInputs = [
-    (if stdenv.buildPlatform == stdenv.hostPlatform then llvm else targetLlvm)
-  ];
-
-  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/pkgs/development/compilers/nextpnr/default.nix b/pkgs/development/compilers/nextpnr/default.nix
deleted file mode 100644
index d56f7e716301..000000000000
--- a/pkgs/development/compilers/nextpnr/default.nix
+++ /dev/null
@@ -1,92 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, cmake
-, boost, python3, eigen, python3Packages
-, icestorm, trellis
-, llvmPackages
-
-, enableGui ? false
-, wrapQtAppsHook ? null
-, qtbase ? null
-, OpenGL ? null
-}:
-
-let
-  boostPython = boost.override { python = python3; enablePython = true; };
-
-  pname = "nextpnr";
-  version = "0.6";
-
-  main_src = fetchFromGitHub {
-    owner = "YosysHQ";
-    repo  = "nextpnr";
-    rev   = "${pname}-${version}";
-    hash  = "sha256-S6qvTzvkS2tBMvuTpmuCx6h0OcKP5NBbmgRgOpAVtnA=";
-    name  = "nextpnr";
-  };
-
-  test_src = fetchFromGitHub {
-    owner  = "YosysHQ";
-    repo   = "nextpnr-tests";
-    rev    = "00c55a9eb9ea2e062b51fe0d64741412b185d95d";
-    sha256 = "sha256-83suMftMtnaRFq3T2/I7Uahb11WZlXhwYt6Q/rqi2Yo=";
-    name   = "nextpnr-tests";
-  };
-in
-
-stdenv.mkDerivation rec {
-  inherit pname version;
-
-  srcs = [ main_src test_src ];
-
-  sourceRoot = main_src.name;
-
-  nativeBuildInputs
-     = [ cmake ]
-    ++ (lib.optional enableGui wrapQtAppsHook);
-  buildInputs
-     = [ boostPython python3 eigen python3Packages.apycula ]
-    ++ (lib.optional enableGui qtbase)
-    ++ (lib.optional stdenv.cc.isClang llvmPackages.openmp);
-
-  cmakeFlags =
-    [ "-DCURRENT_GIT_VERSION=${lib.substring 0 7 (lib.elemAt srcs 0).rev}"
-      "-DARCH=generic;ice40;ecp5;gowin"
-      "-DBUILD_TESTS=ON"
-      "-DICESTORM_INSTALL_PREFIX=${icestorm}"
-      "-DTRELLIS_INSTALL_PREFIX=${trellis}"
-      "-DTRELLIS_LIBDIR=${trellis}/lib/trellis"
-      "-DGOWIN_BBA_EXECUTABLE=${python3Packages.apycula}/bin/gowin_bba"
-      "-DUSE_OPENMP=ON"
-      # warning: high RAM usage
-      "-DSERIALIZE_CHIPDBS=OFF"
-    ]
-    ++ (lib.optional enableGui "-DBUILD_GUI=ON")
-    ++ (lib.optional (enableGui && stdenv.isDarwin)
-        "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks");
-
-  patchPhase = with builtins; ''
-    # use PyPy for icestorm if enabled
-    substituteInPlace ./ice40/CMakeLists.txt \
-      --replace ''\'''${PYTHON_EXECUTABLE}' '${icestorm.pythonInterp}'
-  '';
-
-  preBuild = ''
-    ln -s ../${test_src.name} tests
-  '';
-
-  doCheck = true;
-
-  postFixup = lib.optionalString enableGui ''
-    wrapQtApp $out/bin/nextpnr-generic
-    wrapQtApp $out/bin/nextpnr-ice40
-    wrapQtApp $out/bin/nextpnr-ecp5
-    wrapQtApp $out/bin/nextpnr-gowin
-  '';
-
-  meta = with lib; {
-    description = "Place and route tool for FPGAs";
-    homepage    = "https://github.com/yosyshq/nextpnr";
-    license     = licenses.isc;
-    platforms   = platforms.all;
-    maintainers = with maintainers; [ thoughtpolice emily ];
-  };
-}
diff --git a/pkgs/development/compilers/sbcl/2.x.nix b/pkgs/development/compilers/sbcl/2.x.nix
deleted file mode 100644
index f91e5147cf6a..000000000000
--- a/pkgs/development/compilers/sbcl/2.x.nix
+++ /dev/null
@@ -1,201 +0,0 @@
-{ lib, stdenv, callPackage, clisp, fetchurl, fetchpatch, writeText, zstd
-, threadSupport ? (stdenv.hostPlatform.isx86 || "aarch64-linux" == stdenv.hostPlatform.system || "aarch64-darwin" == stdenv.hostPlatform.system)
-, linkableRuntime ? stdenv.hostPlatform.isx86
-, 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 ...`
-  # to get rid of ${glibc} dependency.
-, purgeNixReferences ? false
-, coreCompression ? lib.versionAtLeast version "2.2.6"
-, markRegionGC ? lib.versionAtLeast version "2.4.0"
-, texinfo
-, version
-}:
-
-let
-  versionMap = {
-    # Only kept around for BCLM. Remove once unneeded there.
-    "2.1.9" = {
-      sha256 = "189gjqzdz10xh3ybiy4ch1r98bsmkcb4hpnrmggd4y2g5kqnyx4y";
-    };
-
-    "2.3.11" = {
-      sha256 = "sha256-hL7rjXLIeJeEf8AoWtyz+k9IG9s5ECxPuat5aEGErSk=";
-    };
-    "2.4.0" = {
-      sha256 = "sha256-g9i3TwjSJUxZuXkLwfZp4JCZRXuIRyDs7L9F9LRtF3Y=";
-    };
-  };
-  # Collection of pre-built SBCL binaries for platforms that need them for
-  # bootstrapping. Ideally these are to be avoided.  If CLISP (or any other
-  # non-binary-distributed Lisp) can run on any of these systems, that entry
-  # should be removed from this list.
-  bootstrapBinaries = rec {
-    # This build segfaults using CLISP.
-    x86_64-darwin = {
-      version = "2.2.9";
-      system = "x86-64-darwin";
-      sha256 = "sha256-b1BLkoLIOELAYBYA9eBmMgm1OxMxJewzNP96C9ADfKY=";
-    };
-    i686-linux = {
-      version = "1.2.7";
-      system = "x86-linux";
-      sha256 = "07f3bz4br280qvn85i088vpzj9wcz8wmwrf665ypqx181pz2ai3j";
-    };
-    armv7l-linux = {
-      version = "1.2.14";
-      system = "armhf-linux";
-      sha256 = "0sp5445rbvms6qvzhld0kwwvydw51vq5iaf4kdqsf2d9jvaz3yx5";
-    };
-    armv6l-linux = armv7l-linux;
-    x86_64-freebsd = {
-      version = "1.2.7";
-      system = "x86-64-freebsd";
-      sha256 = "14k42xiqd2rrim4pd5k5pjcrpkac09qnpynha8j1v4jngrvmw7y6";
-    };
-    x86_64-solaris = {
-      version = "1.2.7";
-      system = "x86-64-solaris";
-      sha256 = "05c12fmac4ha72k1ckl6i780rckd7jh4g5s5hiic7fjxnf1kx8d0";
-    };
-  };
-  sbclBootstrap = callPackage ./bootstrap.nix {
-    cfg = bootstrapBinaries.${stdenv.hostPlatform.system};
-  };
-  bootstrapLisp =
-    if (builtins.hasAttr stdenv.hostPlatform.system bootstrapBinaries)
-    then "${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit"
-    else "${clisp}/bin/clisp -E UTF-8 --silent -norc";
-
-in
-
-stdenv.mkDerivation rec {
-  pname = "sbcl";
-  inherit version;
-
-  src = fetchurl {
-    url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${pname}-${version}-source.tar.bz2";
-    inherit (versionMap.${version}) sha256;
-  };
-
-  nativeBuildInputs = [ texinfo ];
-  buildInputs = lib.optionals coreCompression [ zstd ];
-
-  patches = lib.optionals (version == "2.4.0") [
-    ./fix-2.4.0-aarch64-darwin.patch
-  ];
-
-  postPatch = ''
-    echo '"${version}.nixos"' > version.lisp-expr
-
-    # SBCL checks whether files are up-to-date in many places..
-    # Unfortunately, same timestamp is not good enough
-    sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp
-    #sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp
-    sed -i src/cold/slam.lisp -e \
-      '/file-write-date input/a)'
-    sed -i src/cold/slam.lisp -e \
-      '/file-write-date output/i(or (and (= 2208988801 (file-write-date output)) (= 2208988801 (file-write-date input)))'
-    sed -i src/code/target-load.lisp -e \
-      '/date defaulted-fasl/a)'
-    sed -i src/code/target-load.lisp -e \
-      '/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))'
-
-    # Fix the tests
-    sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp
-    sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp
-  ''
-  + (if purgeNixReferences
-    then
-      # This is the default location to look for the core; by default in $out/lib/sbcl
-      ''
-        sed 's@^\(#define SBCL_HOME\) .*$@\1 "/no-such-path"@' \
-          -i src/runtime/runtime.c
-      ''
-    else
-      # Fix software version retrieval
-      ''
-        sed -e "s@/bin/uname@$(command -v uname)@g" -i src/code/*-os.lisp \
-          src/code/run-program.lisp
-      ''
-    );
-
-
-  preBuild = ''
-    export INSTALL_ROOT=$out
-    mkdir -p test-home
-    export HOME=$PWD/test-home
-  '';
-
-  enableFeatures = with lib;
-    optional threadSupport "sb-thread" ++
-    optional linkableRuntime "sb-linkable-runtime" ++
-    optional coreCompression "sb-core-compression" ++
-    optional stdenv.isAarch32 "arm" ++
-    optional markRegionGC "mark-region-gc";
-
-  disableFeatures = with lib;
-    optional (!threadSupport) "sb-thread" ++
-    optionals disableImmobileSpace [ "immobile-space" "immobile-code" "compact-instance-header" ];
-
-  env.NIX_CFLAGS_COMPILE = toString (lib.optionals (lib.versionOlder version "2.1.10") [
-    # Workaround build failure on -fno-common toolchains like upstream
-    # clang-13. Without the change build fails as:
-    #   duplicate symbol '_static_code_space_free_pointer' in: alloc.o traceroot.o
-    # Should be fixed past 2.1.10 release.
-    "-fcommon"
-  ]
-    # Fails to find `O_LARGEFILE` otherwise.
-    ++ [ "-D_GNU_SOURCE" ]);
-
-  buildPhase = ''
-    runHook preBuild
-
-    sh make.sh --prefix=$out --xc-host="${bootstrapLisp}" ${
-                  lib.concatStringsSep " "
-                    (builtins.map (x: "--with-${x}") enableFeatures ++
-                     builtins.map (x: "--without-${x}") disableFeatures)
-                } ${lib.optionalString (stdenv.hostPlatform.system == "aarch64-darwin") "--arch=arm64"}
-    (cd doc/manual ; make info)
-
-    runHook postBuild
-  '';
-
-  installPhase = ''
-    runHook preInstall
-
-    INSTALL_ROOT=$out sh install.sh
-
-    runHook postInstall
-  ''
-  + lib.optionalString (!purgeNixReferences) ''
-    cp -r src $out/lib/sbcl
-    cp -r contrib $out/lib/sbcl
-    cat >$out/lib/sbcl/sbclrc <<EOF
-     (setf (logical-pathname-translations "SYS")
-       '(("SYS:SRC;**;*.*.*" #P"$out/lib/sbcl/src/**/*.*")
-         ("SYS:CONTRIB;**;*.*.*" #P"$out/lib/sbcl/contrib/**/*.*")))
-    EOF
-  '';
-
-  setupHook = lib.optional purgeNixReferences (writeText "setupHook.sh" ''
-    addEnvHooks "$targetOffset" _setSbclHome
-    _setSbclHome() {
-      export SBCL_HOME='@out@/lib/sbcl/'
-    }
-  '');
-
-  meta = with lib; {
-    description = "Lisp compiler";
-    homepage = "https://sbcl.org";
-    license = licenses.publicDomain; # and FreeBSD
-    maintainers = lib.teams.lisp.members;
-    platforms = attrNames bootstrapBinaries ++ [
-      # These aren’t bootstrapped using the binary distribution but compiled
-      # using a separate (lisp) host
-      "x86_64-linux"
-      "aarch64-darwin"
-      "aarch64-linux"
-    ];
-  };
-}
diff --git a/pkgs/development/compilers/sbcl/bootstrap.nix b/pkgs/development/compilers/sbcl/bootstrap.nix
deleted file mode 100644
index e23557c5a62f..000000000000
--- a/pkgs/development/compilers/sbcl/bootstrap.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib, stdenv, fetchurl, makeWrapper, cfg }:
-
-stdenv.mkDerivation rec {
-  pname = "sbcl-bootstrap";
-  inherit (cfg) version;
-
-  src = fetchurl {
-    url = "mirror://sourceforge/project/sbcl/sbcl/${version}/sbcl-${version}-${cfg.system}-binary.tar.bz2";
-    inherit (cfg) sha256;
-  };
-
-  nativeBuildInputs = [ makeWrapper ];
-
-  installPhase = ''
-    mkdir -p $out/bin
-    cp -p src/runtime/sbcl $out/bin
-
-    mkdir -p $out/share/sbcl
-    cp -p src/runtime/sbcl $out/share/sbcl
-    cp -p output/sbcl.core $out/share/sbcl
-    mkdir -p $out/bin
-    makeWrapper $out/share/sbcl/sbcl $out/bin/sbcl \
-      --add-flags "--core $out/share/sbcl/sbcl.core"
-  '';
-
-  postFixup = lib.optionalString (!stdenv.isAarch32 && stdenv.isLinux) ''
-    patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) $out/share/sbcl/sbcl
-  '';
-}
diff --git a/pkgs/development/compilers/sbcl/fix-2.4.0-aarch64-darwin.patch b/pkgs/development/compilers/sbcl/fix-2.4.0-aarch64-darwin.patch
deleted file mode 100644
index cd344f0cbd19..000000000000
--- a/pkgs/development/compilers/sbcl/fix-2.4.0-aarch64-darwin.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From aed233638604b46c9a0c51e08d096d47303375ca Mon Sep 17 00:00:00 2001
-From: Douglas Katzman <dougk@google.com>
-Date: Tue, 2 Jan 2024 09:20:48 -0500
-Subject: [PATCH] Fix multiple def error
-
-reported by Hraban Luyat
----
- src/runtime/gc-common.c | 1 +
- src/runtime/gc.h        | 2 +-
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/runtime/gc-common.c b/src/runtime/gc-common.c
-index 51963b8ff..07536f628 100644
---- a/src/runtime/gc-common.c
-+++ b/src/runtime/gc-common.c
-@@ -2999,6 +2999,7 @@ void recompute_gen_bytes_allocated() {
- #endif
- 
- #ifdef LISP_FEATURE_DARWIN_JIT
-+_Atomic(char) *page_execp;
- #include "sys_mmap.inc"
- #include <errno.h>
- /* darwin-jit has another reason to remap besides just zeroing, namely,
-diff --git a/src/runtime/gc.h b/src/runtime/gc.h
-index 804e6fce2..5fdc215c2 100644
---- a/src/runtime/gc.h
-+++ b/src/runtime/gc.h
-@@ -151,7 +151,7 @@ extern void prepare_pages(bool commit, page_index_t start, page_index_t end,
-  * squeeze a bit into the 'type' field of the page table, but it's clearer to
-  * have this externally so that page type 0 remains as "free" */
- #ifdef LISP_FEATURE_DARWIN_JIT
--_Atomic(char) *page_execp;
-+extern _Atomic(char) *page_execp;
- static inline void set_page_executable(page_index_t i, bool val) { page_execp[i] = val; }
- #endif
- 
--- 
-2.42.0
-
diff --git a/pkgs/development/compilers/spirv-llvm-translator/default.nix b/pkgs/development/compilers/spirv-llvm-translator/default.nix
index fb5b5b0b7ba5..88119d002808 100644
--- a/pkgs/development/compilers/spirv-llvm-translator/default.nix
+++ b/pkgs/development/compilers/spirv-llvm-translator/default.nix
@@ -28,10 +28,10 @@ let
       version = "15.0.0";
       rev = "v${version}";
       hash = "sha256-OsDohXRxovtEXaWiRGp8gJ0dXmoALyO+ZimeSO8aPVI=";
-    } else if llvmMajor == "14" then rec{
-      version = "14.0.0+unstable-2023-06-22";
-      rev = "23f398bf369093b1fd67459db8071ffcc6b92658";
-      hash = "sha256-o7cVj5/ZMER2CvfxL4pRb2qCIxC/HFUPiitf2fKtCyk=";
+    } else if llvmMajor == "14" then {
+      version = "14.0.0+unstable-2024-01-23";
+      rev = "582a3024c0c2d624a40fa2731d74b2c9ca3b94ab";
+      hash = "sha256-1IRX+5Xh8Fj+/1DIZQrN8ijb2y7H39Y3u+IdbqjQgCc=";
     } else if llvmMajor == "11" then {
       version = "11.0.0+unstable-2022-05-04";
       rev = "4ef524240833abfeee1c5b9fff6b1bd53f4806b3"; # 267 commits ahead of v11.0.0
@@ -48,7 +48,7 @@ disable-warnings-if-gcc13 (stdenv.mkDerivation {
     inherit (branch) rev hash;
   };
 
-  patches = [
+  patches = lib.optionals (lib.versionAtLeast llvmMajor "15") [
     # Fixes build after spirv-headers breaking change
     (fetchpatch {
       url = "https://github.com/KhronosGroup/SPIRV-LLVM-Translator/commit/0166a0fb86dc6c0e8903436bbc3a89bc3273ebc0.patch";
diff --git a/pkgs/development/compilers/unison/default.nix b/pkgs/development/compilers/unison/default.nix
index ab1e8aeea6f2..402171764800 100644
--- a/pkgs/development/compilers/unison/default.nix
+++ b/pkgs/development/compilers/unison/default.nix
@@ -11,17 +11,17 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "unison-code-manager";
-  version = "0.5.13";
+  version = "0.5.14";
 
   src = if stdenv.isDarwin then
     fetchurl {
       url = "https://github.com/unisonweb/unison/releases/download/release/${finalAttrs.version}/ucm-macos.tar.gz";
-      hash = "sha256-/iaL3jTwUeGhfPgZ08njopkOC5t4RY3zggn0n2zLTnw=";
+      hash = "sha256-LLyJy0qz5qm08Xj+mb09lBN5sw3v8AnaSYv832sYefg=";
     }
   else
     fetchurl {
       url = "https://github.com/unisonweb/unison/releases/download/release/${finalAttrs.version}/ucm-linux.tar.gz";
-      hash = "sha256-ZxuHpcyt0zxXMiltue99Tzrlvsrrb1cL3LNcGIo5NsI=";
+      hash = "sha256-sIw3mc78cGPi+E+fXEpMvt+IEfPW03lex30bs0TVevo=";
     };
 
   # The tarball is just the prebuilt binary, in the archive root.
diff --git a/pkgs/development/coq-modules/vscoq-language-server/default.nix b/pkgs/development/coq-modules/vscoq-language-server/default.nix
new file mode 100644
index 000000000000..e70094b994eb
--- /dev/null
+++ b/pkgs/development/coq-modules/vscoq-language-server/default.nix
@@ -0,0 +1,32 @@
+{ metaFetch, mkCoqDerivation, coq, lib, glib, gnome, wrapGAppsHook,
+  version ? null }:
+
+let ocamlPackages = coq.ocamlPackages;
+    defaultVersion = lib.switch coq.coq-version [
+      { case = "8.18"; out = "2.0.3+coq8.18"; }
+    ] null;
+    location = { domain = "github.com"; owner = "coq-community"; repo = "vscoq"; };
+    fetch = metaFetch ({
+      release."2.0.3+coq8.18".sha256 = "sha256-VXhHCP6Ni5/OcsgoI1EbJfYCpXzwkuR8kbbKrl6dfjU=";
+      release."2.0.3+coq8.18".rev = "v2.0.3+coq8.18";
+      inherit location; });
+    fetched = fetch (if version != null then version else defaultVersion);
+in
+ocamlPackages.buildDunePackage {
+  pname = "vscoq-language-server";
+  inherit (fetched) version;
+  src = "${fetched.src}/language-server";
+  buildInputs =
+    [ coq glib gnome.adwaita-icon-theme wrapGAppsHook ] ++
+    (with ocamlPackages; [ findlib
+      lablgtk3-sourceview3 yojson zarith ppx_inline_test
+      ppx_assert ppx_sexp_conv ppx_deriving ppx_import sexplib
+      ppx_yojson_conv lsp sel ]);
+
+  meta = with lib; {
+    description = "Language server for the vscoq vscode/codium extension";
+    homepage = "https://github.com/coq-community/vscoq";
+    maintainers = with maintainers; [ cohencyril ];
+    license = licenses.mit;
+  } // optionalAttrs (fetched.broken or false) { coqFilter = true; broken = true; };
+}
diff --git a/pkgs/development/gnuradio-modules/ais/default.nix b/pkgs/development/gnuradio-modules/ais/default.nix
index 92abb23a5c57..1376fbe657a8 100644
--- a/pkgs/development/gnuradio-modules/ais/default.nix
+++ b/pkgs/development/gnuradio-modules/ais/default.nix
@@ -14,6 +14,7 @@
 , icu
 , gnuradio
 , thrift
+, gnuradioAtLeast
 }:
 
 mkDerivation rec {
@@ -25,7 +26,7 @@ mkDerivation rec {
     rev = "2162103226f3dae43c8c2ab23b79483b84346665";
     sha256 = "1vackka34722d8pcspfwj0j6gc9ic7dqq64sgkrpjm94sh3bmb0b";
   };
-  disabledForGRafter = "3.9";
+  disabled = gnuradioAtLeast "3.9";
 
   nativeBuildInputs = [
     cmake
diff --git a/pkgs/development/gnuradio-modules/grnet/default.nix b/pkgs/development/gnuradio-modules/grnet/default.nix
index 817205cc0ca6..77390e52340b 100644
--- a/pkgs/development/gnuradio-modules/grnet/default.nix
+++ b/pkgs/development/gnuradio-modules/grnet/default.nix
@@ -15,6 +15,7 @@
 , libpcap
 , icu
 , thrift
+, gnuradioAtLeast
 }:
 
 let
@@ -53,7 +54,7 @@ mkDerivation {
   pname = "gr-grnet";
   version = version.name;
   inherit src;
-  disabledForGRafter = "3.10";
+  disabled = gnuradioAtLeast "3.10";
 
   patches = [
     # Use cross platform struct ip instead of iphdr
@@ -73,7 +74,7 @@ mkDerivation {
     gmp
     libpcap
     icu
-  ] ++ (if lib.versionAtLeast gnuradio.versionAttr.major "3.9" then with python.pkgs; [
+  ] ++ (if gnuradioAtLeast "3.9" then with python.pkgs; [
     pybind11
     numpy
   ] else [
diff --git a/pkgs/development/gnuradio-modules/gsm/default.nix b/pkgs/development/gnuradio-modules/gsm/default.nix
index aef853943123..9f184b7be7fb 100644
--- a/pkgs/development/gnuradio-modules/gsm/default.nix
+++ b/pkgs/development/gnuradio-modules/gsm/default.nix
@@ -10,6 +10,7 @@
 , python
 , libosmocore
 , osmosdr
+, gnuradioAtLeast
 }:
 
 mkDerivation {
@@ -21,7 +22,7 @@ mkDerivation {
     rev = "3ca05e6914ef29eb536da5dbec323701fbc2050d";
     sha256 = "13nnq927kpf91iqccr8db9ripy5czjl5jiyivizn6bia0bam2pvx";
   };
-  disabledForGRafter = "3.8";
+  disabled = gnuradioAtLeast "3.8";
 
   nativeBuildInputs = [
     cmake
diff --git a/pkgs/development/gnuradio-modules/limesdr/default.nix b/pkgs/development/gnuradio-modules/limesdr/default.nix
index a9ed621cdf11..bdd541f04432 100644
--- a/pkgs/development/gnuradio-modules/limesdr/default.nix
+++ b/pkgs/development/gnuradio-modules/limesdr/default.nix
@@ -14,6 +14,7 @@
 , gmp
 , icu
 , limesuite
+, gnuradioAtLeast
 }:
 
 let
@@ -33,7 +34,7 @@ let
 in mkDerivation {
   pname = "gr-limesdr";
   inherit version src;
-  disabledForGRafter = "3.9";
+  disabled = gnuradioAtLeast "3.9";
 
   nativeBuildInputs = [
     cmake
diff --git a/pkgs/development/gnuradio-modules/mkDerivation.nix b/pkgs/development/gnuradio-modules/mkDerivation.nix
index 014968f82cc6..11ac506260ad 100644
--- a/pkgs/development/gnuradio-modules/mkDerivation.nix
+++ b/pkgs/development/gnuradio-modules/mkDerivation.nix
@@ -7,12 +7,18 @@ mkDerivation:
 args:
 
 # Check if it's supposed to not get built for the current gnuradio version
-if (builtins.hasAttr "disabledForGRafter" args) &&
-(lib.versionAtLeast unwrapped.versionAttr.major args.disabledForGRafter) then
+if (builtins.hasAttr "disabled" args) && args.disabled then
 let name = args.name or "${args.pname}"; in
 throw "Package ${name} is incompatible with GNURadio ${unwrapped.versionAttr.major}"
 else
 
+if builtins.hasAttr "disabledForGRafter" args then
+throw ''
+  `disabledForGRafter` is superseded by `disabled`.
+  Use `disabled = gnuradioAtLeast "${args.disabledForGRafter}";` instead.
+''
+else
+
 let
   args_ = {
     enableParallelBuilding = args.enableParallelBuilding or true;
diff --git a/pkgs/development/gnuradio-modules/nacl/default.nix b/pkgs/development/gnuradio-modules/nacl/default.nix
index 9f9175eae058..0900ca943b97 100644
--- a/pkgs/development/gnuradio-modules/nacl/default.nix
+++ b/pkgs/development/gnuradio-modules/nacl/default.nix
@@ -9,6 +9,7 @@
 , logLib
 , python
 , libsodium
+, gnuradioAtLeast
 }:
 
 mkDerivation {
@@ -20,7 +21,7 @@ mkDerivation {
     rev = "15276bb0fcabf5fe4de4e58df3d579b5be0e9765";
     sha256 = "018np0qlk61l7mlv3xxx5cj1rax8f1vqrsrch3higsl25yydbv7v";
   };
-  disabledForGRafter = "3.8";
+  disabled = gnuradioAtLeast "3.8";
 
   nativeBuildInputs = [
     cmake
diff --git a/pkgs/development/gnuradio-modules/osmosdr/default.nix b/pkgs/development/gnuradio-modules/osmosdr/default.nix
index 18b8229cebcc..8e46ac561493 100644
--- a/pkgs/development/gnuradio-modules/osmosdr/default.nix
+++ b/pkgs/development/gnuradio-modules/osmosdr/default.nix
@@ -22,6 +22,7 @@
 , libbladeRF
 , rtl-sdr
 , soapysdr-with-plugins
+, gnuradioAtLeast
 }:
 
 let
@@ -44,7 +45,7 @@ let
 in mkDerivation {
   pname = "gr-osmosdr";
   inherit version src;
-  disabledForGRafter = "3.11";
+  disabled = gnuradioAtLeast "3.11";
 
   outputs = [ "out" "dev" ];
 
diff --git a/pkgs/development/gnuradio-modules/rds/default.nix b/pkgs/development/gnuradio-modules/rds/default.nix
index 7ffdd206474a..9a6f2ccbbad4 100644
--- a/pkgs/development/gnuradio-modules/rds/default.nix
+++ b/pkgs/development/gnuradio-modules/rds/default.nix
@@ -12,6 +12,7 @@
 , boost
 , gmp
 , icu
+, gnuradioAtLeast
 }:
 
 let
@@ -33,7 +34,7 @@ let
 in mkDerivation {
   pname = "gr-rds";
   inherit version src;
-  disabledForGRafter = "3.9";
+  disabled = gnuradioAtLeast "3.9";
 
   buildInputs = [
     logLib
diff --git a/pkgs/development/haskell-modules/configuration-darwin.nix b/pkgs/development/haskell-modules/configuration-darwin.nix
index e306884cf4fd..e6400e2c46c8 100644
--- a/pkgs/development/haskell-modules/configuration-darwin.nix
+++ b/pkgs/development/haskell-modules/configuration-darwin.nix
@@ -345,7 +345,7 @@ self: super: ({
   }) (disableCabalFlag "fixity-th" super.fourmolu);
 
   # https://github.com/NixOS/nixpkgs/issues/149692
-  Agda = removeConfigureFlag "-foptimise-heavily" super.Agda;
+  Agda = disableCabalFlag "optimise-heavily" super.Agda;
 
 } // lib.optionalAttrs pkgs.stdenv.isx86_64 {  # x86_64-darwin
 
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index 6e63cca2c154..abfd6ad38a5b 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -492,9 +492,6 @@ self: super: builtins.intersectAttrs super {
   # Uses OpenGL in testing
   caramia = dontCheck super.caramia;
 
-  # 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; };
-
   # llvm-ffi needs a specific version of LLVM which we hard code here. Since we
   # can't use pkg-config (LLVM has no official .pc files), we need to pass the
   # `dev` and `lib` output in, or Cabal will have trouble finding the library.
@@ -1117,10 +1114,16 @@ self: super: builtins.intersectAttrs super {
     preCheck = "export CI=true";
   }) super.aeson-typescript;
 
-  # Enable extra optimisations which increase build time, but also
-  # later compiler performance, so we should do this for user's benefit.
-  # Flag added in Agda 2.6.2
-  Agda = appendConfigureFlag "-foptimise-heavily" super.Agda;
+  Agda = lib.pipe super.Agda [
+    # Enable extra optimisations which increase build time, but also
+    # later compiler performance, so we should do this for user's benefit.
+    # Flag added in Agda 2.6.2
+    (enableCabalFlag "optimise-heavily")
+    # Enable debug printing, which worsens performance slightly but is
+    # very useful.
+    # Flag added in Agda 2.6.4.1, was always enabled before
+    (enableCabalFlag "debug")
+  ];
 
   # ats-format uses cli-setup in Setup.hs which is quite happy to write
   # to arbitrary files in $HOME. This doesn't either not achieve anything
diff --git a/pkgs/development/interpreters/elixir/1.16.nix b/pkgs/development/interpreters/elixir/1.16.nix
index 8a320eae7bb2..2f57e371e28b 100644
--- a/pkgs/development/interpreters/elixir/1.16.nix
+++ b/pkgs/development/interpreters/elixir/1.16.nix
@@ -1,7 +1,7 @@
 { mkDerivation }:
 mkDerivation {
-  version = "1.16.0";
-  sha256 = "sha256-nM3TpX18zdjDAFkljsAqwKx/1AQmwDMIQCeL75etTQc=";
+  version = "1.16.1";
+  sha256 = "sha256-rjUt3gCUszCbzGE7BriwH3ptrV81dqNB/d0nVOXrcGI=";
   # https://hexdocs.pm/elixir/1.16.0/compatibility-and-deprecations.html#compatibility-between-elixir-and-erlang-otp
   minimumOTPVersion = "24";
   escriptPath = "lib/elixir/scripts/generate_app.escript";
diff --git a/pkgs/development/interpreters/j/default.nix b/pkgs/development/interpreters/j/default.nix
index 2da499352b3e..97a8064cc60d 100644
--- a/pkgs/development/interpreters/j/default.nix
+++ b/pkgs/development/interpreters/j/default.nix
@@ -1,37 +1,34 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, bc
-, libedit
-, readline
-, avxSupport ? stdenv.hostPlatform.avxSupport
+, which
+, gmp
+, avx2Support ? stdenv.hostPlatform.avx2Support
 }:
 
 stdenv.mkDerivation rec {
   pname = "j";
-  version = "904-beta-c";
+  version = "9.5.1";
 
   src = fetchFromGitHub {
-    name = "${pname}-source";
     owner = "jsoftware";
     repo = "jsource";
-    rev = "j${version}";
-    hash = "sha256-MzEO/saHEBl1JwVlFC6P2UKm9RZnV7KVrNd9h4cPV/w=";
+    rev = "${version}";
+    hash = "sha256-QRQhE8138+zaGQOdq9xUOrifkVIprzbJWbmMK+WhEOU=";
   };
 
-  buildInputs = [
-    readline
-    libedit
-    bc
-  ];
+  nativeBuildInputs = [ which ];
+  buildInputs = [ gmp ];
 
   patches = [
     ./fix-install-path.patch
   ];
 
+  enableParallelBuilding = true;
+
   dontConfigure = true;
 
-  # emulating build_all.sh configuration variables
+  # Emulate jplatform64.sh configuration variables
   jplatform =
     if stdenv.isDarwin then "darwin"
     else if stdenv.hostPlatform.isAarch then "raspberry"
@@ -41,62 +38,39 @@ stdenv.mkDerivation rec {
   j64x =
     if stdenv.is32bit then "j32"
     else if stdenv.isx86_64 then
-      if (stdenv.isLinux && avxSupport) then "j64avx" else "j64"
+      if stdenv.isLinux && avx2Support then "j64avx2" else "j64"
     else if stdenv.isAarch64 then
       if stdenv.isDarwin then "j64arm" else "j64"
     else "unsupported";
 
+  env.NIX_LDFLAGS = "-lgmp";
+
   buildPhase = ''
     runHook preBuild
-
-    export SRCDIR=$(pwd)
-    export HOME=$TMPDIR
-    export JLIB=$SRCDIR/jlibrary
-    export CC=cc
-
-    cd make2
-
-    patchShebangs .
-
-    j64x="${j64x}" jplatform="${jplatform}" ./build_all.sh
-
-    cp -v $SRCDIR/bin/${jplatform}/${j64x}/* "$JLIB/bin"
-
+    MAKEFLAGS+=" ''${enableParallelBuilding:+-j$NIX_BUILD_CORES}" \
+      jplatform=${jplatform} j64x=${j64x} make2/build_all.sh
+    cp -v bin/${jplatform}/${j64x}/* jlibrary/bin/
     runHook postBuild
   '';
 
-  doCheck = true;
-
-  checkPhase = ''
-    runHook preCheck
-
-    echo "Smoke test"
-    echo 'i. 10' | $JLIB/bin/jconsole | fgrep "0 1 2 3 4 5 6 7 8 9"
-
-    # Now run the real tests
-    pushd $SRCDIR/test
-    for f in *.ijs
-    do
-      echo -n "test $f: "
-      $JLIB/bin/jconsole < $f > /dev/null || echo FAIL && echo PASS
-    done
-    popd
-
-    runHook postCheck
-  '';
-
   installPhase = ''
     runHook preInstall
+    mkdir -p $out/share/j
+    cp -r jlibrary/{addons,system} $out/share/j/
+    cp -r jlibrary/bin $out/
+    runHook postInstall
+  '';
 
-    mkdir -p "$out/share/j/"
-    cp -r $JLIB/{addons,system} "$out/share/j"
-    cp -r $JLIB/bin "$out"
+  doInstallCheck = false; # The "gregex" test fails due to not finding PCRE2
 
-    runHook postInstall
+  installCheckPhase = ''
+    runHook preInstallCheck
+    HOME="$TMPDIR" $out/bin/jconsole -lib $out/bin/libj* script/testga.ijs
+    runHook postInstallCheck
   '';
 
   meta = with lib; {
-    homepage = "http://jsoftware.com/";
+    homepage = "https://jsoftware.com/";
     description = "J programming language, an ASCII-based APL successor";
     longDescription = ''
       J is a high-level, general-purpose programming language that is
@@ -104,8 +78,10 @@ stdenv.mkDerivation rec {
       of data. It is a powerful tool for developing algorithms and exploring
       problems that are not already well understood.
     '';
-    license = licenses.gpl3Plus;
+    license = licenses.gpl3Only;
     maintainers = with maintainers; [ raskin synthetica AndersonTorres ];
-    platforms = with platforms; unix;
+    broken = stdenv.isDarwin;
+    platforms = platforms.all;
+    mainProgram = "jconsole";
   };
 }
diff --git a/pkgs/development/interpreters/lfe/2.1.nix b/pkgs/development/interpreters/lfe/2.1.nix
index 2dff2ade66c1..f239aa94b78f 100644
--- a/pkgs/development/interpreters/lfe/2.1.nix
+++ b/pkgs/development/interpreters/lfe/2.1.nix
@@ -1,7 +1,7 @@
 { fetchpatch, mkDerivation }:
 
 mkDerivation {
-  version = "2.1.1";
-  sha256 = "sha256-HUOVBzUaU0ixIfPPctwR2TPijxJjcFY3dJ8Z7Ot2bpE=";
-  maximumOTPVersion = "25";
+  version = "2.1.3";
+  hash = "sha256-HUOVBzUaU0ixIfPPctwR2TPijxJjcFY3dJ8Z7Ot2bpE=";
+  maximumOTPVersion = "26";
 }
diff --git a/pkgs/development/interpreters/lfe/generic-builder.nix b/pkgs/development/interpreters/lfe/generic-builder.nix
index 5e6016d4e97e..1589121d998d 100644
--- a/pkgs/development/interpreters/lfe/generic-builder.nix
+++ b/pkgs/development/interpreters/lfe/generic-builder.nix
@@ -3,9 +3,10 @@
 { baseName ? "lfe"
 , version
 , maximumOTPVersion
-, sha256 ? null
+, sha256 ? ""
+, hash ? ""
 , rev ? version
-, src ? fetchFromGitHub { inherit rev sha256; owner = "rvirding"; repo = "lfe"; }
+, src ? fetchFromGitHub { inherit hash rev sha256; owner = "lfe"; repo = "lfe"; }
 , patches ? []
 }:
 
diff --git a/pkgs/development/interpreters/php/8.1.nix b/pkgs/development/interpreters/php/8.1.nix
index 3082f8b85b62..ff76b64d71cf 100644
--- a/pkgs/development/interpreters/php/8.1.nix
+++ b/pkgs/development/interpreters/php/8.1.nix
@@ -1,9 +1,17 @@
-{ callPackage, ... }@_args:
+{ callPackage, fetchpatch, ... }@_args:
 
 let
-  base = callPackage ./generic.nix (_args // {
+  base = callPackage ./generic.nix ((removeAttrs _args [ "fetchpatch" ]) // {
     version = "8.1.27";
     hash = "sha256-oV/XPqRPLfMLB9JHhuB9GUiw6j7tC4uEVzXVANwov/E=";
+    extraPatches = [
+      # Fix build with libxml 2.12+.
+      # Patch from https://github.com/php/php-src/commit/0a39890c967aa57225bb6bdf4821aff7a3a3c082
+      (fetchpatch {
+        url = "https://github.com/php/php-src/commit/0a39890c967aa57225bb6bdf4821aff7a3a3c082.patch";
+        hash = "sha256-HvpTL7aXO9gr4glFdhqUWQPrG8TYTlvbNINq33M3zS0=";
+      })
+    ];
   });
 in
 base.withExtensions ({ all, ... }: with all; ([
diff --git a/pkgs/development/interpreters/python/python-packages-base.nix b/pkgs/development/interpreters/python/python-packages-base.nix
index 2126b796ca9d..e2bd6cd5a5ab 100644
--- a/pkgs/development/interpreters/python/python-packages-base.nix
+++ b/pkgs/development/interpreters/python/python-packages-base.nix
@@ -98,8 +98,4 @@ in {
   python = toPythonModule python;
   # Dont take pythonPackages from "global" pkgs scope to avoid mixing python versions
   pythonPackages = self;
-
-  # Remove?
-  recursivePthLoader = toPythonModule (callPackage ../../../development/python-modules/recursive-pth-loader { });
-
 }
diff --git a/pkgs/development/interpreters/rakudo/moarvm.nix b/pkgs/development/interpreters/rakudo/moarvm.nix
index d914b7a1fac2..dbe678079f02 100644
--- a/pkgs/development/interpreters/rakudo/moarvm.nix
+++ b/pkgs/development/interpreters/rakudo/moarvm.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, cctools-port
 , perl
 , CoreServices
 , ApplicationServices
@@ -9,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "moarvm";
-  version = "2023.10";
+  version = "2024.01";
 
   src = fetchFromGitHub {
     owner = "moarvm";
     repo = "moarvm";
     rev = version;
-    hash = "sha256-1w6oMoxDro/AHE+QvjKUx9cxNpYuVSXYrRMh31ksgoQ=";
+    hash = "sha256-vU1fhR6pKz2qnznrJ/mknt9DVx+I1kLaPStXKQvp59g=";
     fetchSubmodules = true;
   };
 
@@ -27,13 +26,9 @@ stdenv.mkDerivation rec {
       --replace '/usr/bin/arch' "$(type -P true)" \
       --replace '/usr/' '/nope/'
     substituteInPlace 3rdparty/dyncall/configure \
-      --replace '`sw_vers -productVersion`' '"$MACOSX_DEPLOYMENT_TARGET"'
+      --replace '`sw_vers -productVersion`' '"11.0"'
   '';
 
-  nativeBuildInputs = lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
-    cctools-port
-  ];
-
   buildInputs = [ perl ] ++ lib.optionals stdenv.isDarwin [ CoreServices ApplicationServices ];
   doCheck = false; # MoarVM does not come with its own test suite
 
diff --git a/pkgs/development/interpreters/risor/default.nix b/pkgs/development/interpreters/risor/default.nix
index 9798c6fdefaf..22bbe5b9c73b 100644
--- a/pkgs/development/interpreters/risor/default.nix
+++ b/pkgs/development/interpreters/risor/default.nix
@@ -7,17 +7,17 @@
 
 buildGoModule rec {
   pname = "risor";
-  version = "1.1.2";
+  version = "1.3.2";
 
   src = fetchFromGitHub {
     owner = "risor-io";
     repo = "risor";
     rev = "v${version}";
-    hash = "sha256-7/pGC2+7KKc+1JZrPnchG3/Zj15lfcvTppuFUcpu/aU=";
+    hash = "sha256-E4Huto3jvPziWEZqHwVBchZYDX/Tuq/TCBvoviin5UY=";
   };
 
   proxyVendor = true;
-  vendorHash = "sha256-6Zb30IXZsRQ0mvJOf4yDPkk7I+s18ok/V90mSKB/Ev4=";
+  vendorHash = "sha256-0NYvZhVkDX6WlKN4QFXyrNnEy0sjUQ1Us+iNEPIgNX0=";
 
   subPackages = [
     "cmd/risor"
diff --git a/pkgs/development/interpreters/spidermonkey/common.nix b/pkgs/development/interpreters/spidermonkey/common.nix
index ff9bb39e0a29..46af4ec26bbe 100644
--- a/pkgs/development/interpreters/spidermonkey/common.nix
+++ b/pkgs/development/interpreters/spidermonkey/common.nix
@@ -125,7 +125,6 @@ stdenv.mkDerivation (finalAttrs: rec {
     "--disable-jemalloc"
     "--disable-strip"
     "--disable-tests"
-  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     # Spidermonkey seems to use different host/build terminology for cross
     # compilation here.
     "--host=${stdenv.buildPlatform.config}"
diff --git a/pkgs/development/interpreters/wasmtime/default.nix b/pkgs/development/interpreters/wasmtime/default.nix
index 47790df5ec3f..3d97167d64dc 100644
--- a/pkgs/development/interpreters/wasmtime/default.nix
+++ b/pkgs/development/interpreters/wasmtime/default.nix
@@ -2,19 +2,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wasmtime";
-  version = "16.0.0";
+  version = "17.0.0";
 
   src = fetchFromGitHub {
     owner = "bytecodealliance";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-kySJme79RQMI8PP2Jhx1mjqJpUIf5jPn2TvbPEzw5hY=";
+    hash = "sha256-HGs82LMDJJZl1bPaFsVetpMR7ytBgGmOkH1tt7xmUMA=";
     fetchSubmodules = true;
   };
 
   # Disable cargo-auditable until https://github.com/rust-secure-code/cargo-auditable/issues/124 is solved.
   auditable = false;
-  cargoHash = "sha256-2XlnR4OBvdQyMUUOL6VvqDxf8jGYlhz2PDuPd24Ocxw=";
+  cargoHash = "sha256-bNGpBgAhLN4s90saQqIgFb6hXtfC9NIjOfy+hvkRJ6E=";
   cargoBuildFlags = [ "--package" "wasmtime-cli" "--package" "wasmtime-c-api" ];
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/abseil-cpp/202401.nix b/pkgs/development/libraries/abseil-cpp/202401.nix
new file mode 100644
index 000000000000..f540a7f8260a
--- /dev/null
+++ b/pkgs/development/libraries/abseil-cpp/202401.nix
@@ -0,0 +1,42 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, gtest
+, static ? stdenv.hostPlatform.isStatic
+, cxxStandard ? null
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "abseil-cpp";
+  version = "20240116.0";
+
+  src = fetchFromGitHub {
+    owner = "abseil";
+    repo = "abseil-cpp";
+    rev = "refs/tags/${finalAttrs.version}";
+    hash = "sha256-HtJh2oYGx87bNT6Ll3WLeYPPxH1f9JwVqCXGErykGnE=";
+  };
+
+  cmakeFlags = [
+    "-DABSL_BUILD_TEST_HELPERS=ON"
+    "-DABSL_USE_EXTERNAL_GOOGLETEST=ON"
+    "-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}"
+  ] ++ lib.optionals (cxxStandard != null) [
+    "-DCMAKE_CXX_STANDARD=${cxxStandard}"
+  ];
+
+  strictDeps = true;
+
+  nativeBuildInputs = [ cmake ];
+
+  buildInputs = [ gtest ];
+
+  meta = with lib; {
+    description = "An open-source collection of C++ code designed to augment the C++ standard library";
+    homepage = "https://abseil.io/";
+    license = licenses.asl20;
+    platforms = platforms.all;
+    maintainers = [ maintainers.GaetanLepage ];
+  };
+})
diff --git a/pkgs/development/libraries/agda/1lab/default.nix b/pkgs/development/libraries/agda/1lab/default.nix
index c158449aed16..89b0fb60c365 100644
--- a/pkgs/development/libraries/agda/1lab/default.nix
+++ b/pkgs/development/libraries/agda/1lab/default.nix
@@ -11,9 +11,13 @@ mkDerivation rec {
     hash = "sha256-0U6s6sXdynk2IWRBDXBJCf7Gc+gE8AhR1PXZl0DS4yU=";
   };
 
-  # We don't need anything in support; avoid installing LICENSE.agda
   postPatch = ''
+    # We don't need anything in support; avoid installing LICENSE.agda
     rm -rf support
+
+    # Remove verbosity options as they make Agda take longer and use more memory.
+    shopt -s globstar extglob
+    sed -Ei '/OPTIONS/s/ -v ?[^ #]+//g' src/**/*.@(agda|lagda.md)
   '';
 
   libraryName = "1lab";
diff --git a/pkgs/development/libraries/bobcat/default.nix b/pkgs/development/libraries/bobcat/default.nix
deleted file mode 100644
index 4e328fe2b2a9..000000000000
--- a/pkgs/development/libraries/bobcat/default.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ lib, stdenv, fetchFromGitLab, icmake
-, libmilter, libX11, openssl, readline
-, util-linux, yodl }:
-
-stdenv.mkDerivation rec {
-  pname = "bobcat";
-  version = "5.11.01";
-
-  src = fetchFromGitLab {
-    sha256 = "sha256-JLJKaJmztputIon9JkKzpm3Ch60iwm4Imh9p42crYzA=";
-    domain = "gitlab.com";
-    rev = version;
-    repo = "bobcat";
-    owner = "fbb-git";
-  };
-
-  buildInputs = [ libmilter libX11 openssl readline util-linux ];
-  nativeBuildInputs = [ icmake yodl ];
-
-  setSourceRoot = ''
-    sourceRoot=$(echo */bobcat)
-  '';
-
-  postPatch = ''
-    substituteInPlace INSTALL.im --replace /usr $out
-    patchShebangs .
-  '';
-
-  buildPhase = ''
-    ./build libraries all
-    ./build man
-  '';
-
-  installPhase = ''
-    ./build install x
-  '';
-
-  meta = with lib; {
-    description = "Brokken's Own Base Classes And Templates";
-    homepage = "https://fbb-git.gitlab.io/bobcat/";
-    license = licenses.gpl3;
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/catch2/3.nix b/pkgs/development/libraries/catch2/3.nix
index dff36cbc3d3a..aa8bf62059bd 100644
--- a/pkgs/development/libraries/catch2/3.nix
+++ b/pkgs/development/libraries/catch2/3.nix
@@ -46,6 +46,6 @@ stdenv.mkDerivation rec {
     changelog = "https://github.com/catchorg/Catch2/blob/${src.rev}/docs/release-notes.md";
     license = lib.licenses.boost;
     maintainers = with lib.maintainers; [ dotlambda ];
-    platforms = lib.platforms.unix;
+    platforms = with lib.platforms; unix ++ windows;
   };
 }
diff --git a/pkgs/development/libraries/catch2/default.nix b/pkgs/development/libraries/catch2/default.nix
index 3c51fa9371d9..56b2016539be 100644
--- a/pkgs/development/libraries/catch2/default.nix
+++ b/pkgs/development/libraries/catch2/default.nix
@@ -20,6 +20,6 @@ stdenv.mkDerivation rec {
     homepage = "http://catch-lib.net";
     license = licenses.boost;
     maintainers = with maintainers; [ edwtjo knedlsepp ];
-    platforms = platforms.unix ++ [ "x86_64-windows" ];
+    platforms = with platforms; unix ++ windows;
   };
 }
diff --git a/pkgs/development/libraries/cglm/default.nix b/pkgs/development/libraries/cglm/default.nix
index f9bc0ebb9083..a4fab015db90 100644
--- a/pkgs/development/libraries/cglm/default.nix
+++ b/pkgs/development/libraries/cglm/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cglm";
-  version = "0.9.1";
+  version = "0.9.2";
 
   src = fetchFromGitHub {
     owner = "recp";
     repo = "cglm";
     rev = "v${version}";
-    sha256 = "sha256-qOPOJ+h1bq5yKkP3ZNeZnRwiOMSgS7bxTk7s/5tREQw=";
+    sha256 = "sha256-jaG+XGbSx5SaNhGFWLh+1WTB+ya3c5tBZYs9xKIRafI=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/clap/default.nix b/pkgs/development/libraries/clap/default.nix
index 1da0b31cb10c..e6c017cb7808 100644
--- a/pkgs/development/libraries/clap/default.nix
+++ b/pkgs/development/libraries/clap/default.nix
@@ -2,17 +2,18 @@
 , stdenv
 , fetchFromGitHub
 , cmake
+, testers
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "clap";
-  version = "1.1.10";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "free-audio";
     repo = "clap";
-    rev = version;
-    hash = "sha256-AH3kSCp4Q8Nw3To2vuPuMH/cWm3cmzj2OEH/Azcbdmo=";
+    rev = finalAttrs.version;
+    hash = "sha256-BNT2yWIlWk8kzhZteh7TaamliwJI+lzWVs/8XCFsuUc=";
   };
 
   postPatch = ''
@@ -22,11 +23,14 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
+  passthru.tests.pkg-config = testers.hasPkgConfigModules { package = finalAttrs.finalPackage; };
+
   meta = with lib; {
     description = "Clever Audio Plugin API interface headers";
     homepage = "https://cleveraudio.org/";
+    pkgConfigModules = [ "clap" ];
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = with maintainers; [ ris ];
   };
-}
+})
diff --git a/pkgs/development/libraries/cmark/default.nix b/pkgs/development/libraries/cmark/default.nix
index 830791f6fb31..23d00769ee1b 100644
--- a/pkgs/development/libraries/cmark/default.nix
+++ b/pkgs/development/libraries/cmark/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cmark";
-  version = "0.30.3";
+  version = "0.31.0";
 
   src = fetchFromGitHub {
     owner = "commonmark";
     repo = pname;
     rev = version;
-    sha256 = "sha256-/7TzaZYP8lndkfRPgCpBbazUBytVLXxqWHYktIsGox0=";
+    sha256 = "sha256-GBesKTp9DqoFAmCc0RB+XePvzV9g+w+oyrD1nCgyklI=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/crossguid/default.nix b/pkgs/development/libraries/crossguid/default.nix
index bccba589e031..e8d85ec23dd5 100644
--- a/pkgs/development/libraries/crossguid/default.nix
+++ b/pkgs/development/libraries/crossguid/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake, libuuid, unstableGitUpdater }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, libuuid, unstableGitUpdater }:
 
 stdenv.mkDerivation rec {
   pname = "crossguid";
@@ -11,6 +11,16 @@ stdenv.mkDerivation rec {
     hash = "sha256-37tKPDo4lukl/aaDWWSQYfsBNEnDjE7t6OnEZjBhcvQ=";
   };
 
+  patches = [
+    # Fix the build against gcc-13:
+    #   https://github.com/graeme-hill/crossguid/pull/67
+    (fetchpatch {
+      name = "gcc-13.patch";
+      url = "https://github.com/graeme-hill/crossguid/commit/1eb9bea38c320b2b588635cffceaaa2a8d434780.patch";
+      hash = "sha256-0qKZUeuNfc3gt+aFeaTt+IexO391GCdjS+9PVJmBKV4=";
+    })
+  ];
+
   nativeBuildInputs = [ cmake ];
   buildInputs = lib.optional stdenv.isLinux libuuid;
 
diff --git a/pkgs/development/libraries/entt/default.nix b/pkgs/development/libraries/entt/default.nix
index 44e0b9ed1f05..ac12b2e5a561 100644
--- a/pkgs/development/libraries/entt/default.nix
+++ b/pkgs/development/libraries/entt/default.nix
@@ -1,13 +1,13 @@
 { lib, stdenv, fetchFromGitHub, cmake }:
 stdenv.mkDerivation rec {
   pname = "entt";
-  version = "3.12.2";
+  version = "3.13.0";
 
   src = fetchFromGitHub {
     owner = "skypjack";
     repo = "entt";
     rev = "v${version}";
-    sha256 = "sha256-gzoea3IbmpkIZYrfTZA6YgcnDU5EKdXF5Y7Yz2Uaj4A=";
+    hash = "sha256-LiQBKpXSr5+zOgtc+8snGqN/Aq3EHhQjlMBuqDOlSz0=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/example-robot-data/default.nix b/pkgs/development/libraries/example-robot-data/default.nix
index 11b689838226..b2e665bbc4a9 100644
--- a/pkgs/development/libraries/example-robot-data/default.nix
+++ b/pkgs/development/libraries/example-robot-data/default.nix
@@ -8,14 +8,14 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "example-robot-data";
-  version = "4.0.9";
+  version = "4.1.0";
 
   src = fetchFromGitHub {
     owner = "Gepetto";
     repo = "example-robot-data";
     rev = "v${finalAttrs.version}";
     fetchSubmodules = true;
-    hash = "sha256-dLW8QaQhTTDcE4QCP9uV4ykOqwc3nbPUmF1B77r8CHQ=";
+    hash = "sha256-Heq+c8SSYNO8ksTv5FphRBRStlTakm9T66jlPXon5tI=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/libraries/faudio/default.nix b/pkgs/development/libraries/faudio/default.nix
index 546824ec8e24..96734d7325c1 100644
--- a/pkgs/development/libraries/faudio/default.nix
+++ b/pkgs/development/libraries/faudio/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "faudio";
-  version = "24.01";
+  version = "24.02";
 
   src = fetchFromGitHub {
     owner = "FNA-XNA";
     repo = "FAudio";
     rev = version;
-    sha256 = "sha256-9/hgGrMtEz2CXZUPVMT1aSwDMlb+eQ9soTp1X1uME7I=";
+    sha256 = "sha256-xEieWgPNSpRJNYh65F2+NLXVZIlKA5ZE+959+s9zQ/I=";
   };
 
   nativeBuildInputs = [cmake];
diff --git a/pkgs/development/libraries/fbjni/default.nix b/pkgs/development/libraries/fbjni/default.nix
index 1a5228f4d860..20d47cac1fa3 100644
--- a/pkgs/development/libraries/fbjni/default.nix
+++ b/pkgs/development/libraries/fbjni/default.nix
@@ -19,12 +19,20 @@ stdenv.mkDerivation rec {
   };
 
   patches = [
+    # Upstram fix for builds on GCC 13. Should be removable with next release after 0.5.1
+    (fetchpatch {
+      name = "add-cstdint-include.patch";
+      url = "https://github.com/facebookincubator/fbjni/commit/59461eff6c7881d58e958287481e1f1cd99e08d3.patch";
+      hash = "sha256-r27C+ODTCZdd1tEz3cevnNNyZlrRhq1jOzwnIYlkglM=";
+    })
+
     # Part of https://github.com/facebookincubator/fbjni/pull/76
     # fix cmake file installation directory
     (fetchpatch {
       url = "https://github.com/facebookincubator/fbjni/commit/ab02e60b5da28647bfcc864b0bb1b9a90504cdb1.patch";
       sha256 = "sha256-/h6kosulRH/ZAU2u0zRSaNDK39jsnFt9TaSxyBllZqM=";
     })
+
     # install headers
     (fetchpatch {
       url = "https://github.com/facebookincubator/fbjni/commit/74e125caa9a815244f1e6bd08eaba57d015378b4.patch";
diff --git a/pkgs/development/libraries/gdcm/default.nix b/pkgs/development/libraries/gdcm/default.nix
index 2a4fdaca2725..9d6db6fca684 100644
--- a/pkgs/development/libraries/gdcm/default.nix
+++ b/pkgs/development/libraries/gdcm/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gdcm";
-  version = "3.0.22";
+  version = "3.0.23";
 
   src = fetchFromGitHub {
     owner = "malaterre";
     repo = "GDCM";
     rev = "refs/tags/v${version}";
-    hash = "sha256-geWNGbBJGKPs5hNO42vtVOj0rOWyM6zmcocvRhWW4s0=";
+    hash = "sha256-zwIPWcjTrfbdNBzAqwV6lU2l6sx+e4Yi7dprdem6AeE=";
   };
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/glfw/3.x.nix b/pkgs/development/libraries/glfw/3.x.nix
index 4e01ca5c2b6e..01db789a60bd 100644
--- a/pkgs/development/libraries/glfw/3.x.nix
+++ b/pkgs/development/libraries/glfw/3.x.nix
@@ -6,14 +6,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "3.3.8";
+  version = "3.3.9";
   pname = "glfw";
 
   src = fetchFromGitHub {
     owner = "glfw";
     repo = "GLFW";
     rev = version;
-    sha256 = "sha256-4+H0IXjAwbL5mAWfsIVhW0BSJhcWjkQx4j2TrzZ3aIo=";
+    sha256 = "sha256-DlPRNGCBr6XF9Jn8kWs5lCRTyjPeDt/69PNDzBDhoyg=";
   };
 
   # Fix linkage issues on X11 (https://github.com/NixOS/nixpkgs/issues/142583)
diff --git a/pkgs/development/libraries/httplib/default.nix b/pkgs/development/libraries/httplib/default.nix
index a65440848bee..1de0082cade2 100644
--- a/pkgs/development/libraries/httplib/default.nix
+++ b/pkgs/development/libraries/httplib/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "httplib";
-  version = "0.14.3";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     owner = "yhirose";
     repo = "cpp-httplib";
     rev = "v${version}";
-    hash = "sha256-53EBZTpz0INtjVSmjvg7XOQf0Bs2ADVe2//+nK6xRyE=";
+    hash = "sha256-HV2RiWu4rt3rau/flcha500R67oGwbmyEPPnklpAvgY=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/libbacktrace/default.nix b/pkgs/development/libraries/libbacktrace/default.nix
index b188a9cfc38c..288185f92281 100644
--- a/pkgs/development/libraries/libbacktrace/default.nix
+++ b/pkgs/development/libraries/libbacktrace/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation {
   pname = "libbacktrace";
-  version = "unstable-2022-12-16";
+  version = "unstable-2023-11-30";
 
   src = fetchFromGitHub {
     owner = "ianlancetaylor";
     repo = "libbacktrace";
-    rev = "da7eff2f37e38136c5a0c8922957b9dfab5483ef";
-    sha256 = "ADp8n1kUf8OysFY/Jv1ytxKjqgz1Nu2VRcFGlt1k/HM=";
+    rev = "14818b7783eeb9a56c3f0fca78cefd3143f8c5f6";
+    sha256 = "DQZQsqzeQ/0v87bfqs6sXqS2M5Tunc1OydTWRSB3PCw=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/libcint/default.nix b/pkgs/development/libraries/libcint/default.nix
index 439cd74bca63..caa7e51336a4 100644
--- a/pkgs/development/libraries/libcint/default.nix
+++ b/pkgs/development/libraries/libcint/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libcint";
-  version = "6.1.1";
+  version = "6.1.2";
 
   src = fetchFromGitHub {
     owner = "sunqm";
     repo = "libcint";
     rev = "v${version}";
-    hash = "sha256-wV3y+NobV6J+J6I2z3dJdCvTwvfgMspMtAGNpbwfsYk=";
+    hash = "sha256-URJcC0ib87ejrTCglCjhC2tQHNc5TRvo4CQ52N58n+4=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/libetpan/default.nix b/pkgs/development/libraries/libetpan/default.nix
index 1f7f52c70ab5..767b53c9d277 100644
--- a/pkgs/development/libraries/libetpan/default.nix
+++ b/pkgs/development/libraries/libetpan/default.nix
@@ -95,5 +95,6 @@ stdenv.mkDerivation rec {
     homepage = "https://www.etpan.org/libetpan.html";
     license = licenses.bsd3;
     maintainers = with maintainers; [ oxzi ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libhwy/default.nix b/pkgs/development/libraries/libhwy/default.nix
index b2f32cbe7252..664378d42b6d 100644
--- a/pkgs/development/libraries/libhwy/default.nix
+++ b/pkgs/development/libraries/libhwy/default.nix
@@ -4,6 +4,7 @@
 , ninja
 , gtest
 , fetchFromGitHub
+, fetchpatch
 }:
 
 stdenv.mkDerivation rec {
@@ -17,6 +18,15 @@ stdenv.mkDerivation rec {
     hash = "sha256-Z+mAR9nSAbCskUvo6oK79Yd85bu0HtI2aR5THS1EozM=";
   };
 
+  patches = lib.optional stdenv.hostPlatform.isRiscV
+    # Adds CMake option HWY_CMAKE_RVV
+    # https://github.com/google/highway/pull/1743
+    (fetchpatch {
+      name = "libhwy-add-rvv-optout.patch";
+      url = "https://github.com/google/highway/commit/5d58d233fbcec0c6a39df8186a877329147324b3.patch";
+      hash = "sha256-ileSNYddOt1F5rooRB0fXT20WkVlnG+gP5w7qJdBuww=";
+    });
+
   nativeBuildInputs = [ cmake ninja ];
 
   # Required for case-insensitive filesystems ("BUILD" exists)
@@ -43,6 +53,11 @@ stdenv.mkDerivation rec {
     #   HwyMathTestGroup/HwyMathTest.TestAllAtanh/EMU128
     #   HwyMathTestGroup/HwyMathTest.TestAllLog1p/EMU128
     "-DHWY_CMAKE_SSE2=ON"
+  ] ++ lib.optionals stdenv.hostPlatform.isRiscV [
+    # Runtime dispatch is not implemented https://github.com/google/highway/issues/838
+    # so tests (and likely normal operation) fail with SIGILL on processors without V.
+    # Until the issue is resolved, we disable RVV completely.
+    "-DHWY_CMAKE_RVV=OFF"
   ];
 
   # hydra's darwin machines run into https://github.com/libjxl/libjxl/issues/408
diff --git a/pkgs/development/libraries/libmilter/default.nix b/pkgs/development/libraries/libmilter/default.nix
index 3ff3a4ffa9fb..a06f3d4deca1 100644
--- a/pkgs/development/libraries/libmilter/default.nix
+++ b/pkgs/development/libraries/libmilter/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libmilter";
-  version = "8.17.2";
+  version = "8.18.1";
 
   src = fetchurl {
     url = "ftp://ftp.sendmail.org/pub/sendmail/sendmail.${version}.tar.gz";
-    sha256 = "sha256-kPWudMNahICIYZM7oJQgG5AbcMaykDaE3POb2uiloaI=";
+    sha256 = "sha256-y/HzCcOOSAb3zz6tJCYPF9H+j7YyVtE+2zzdGgmPB3A=";
   };
 
   buildPhase = ''
diff --git a/pkgs/development/libraries/libplacebo/default.nix b/pkgs/development/libraries/libplacebo/default.nix
index c303ffb29558..cad556ee7a7e 100644
--- a/pkgs/development/libraries/libplacebo/default.nix
+++ b/pkgs/development/libraries/libplacebo/default.nix
@@ -14,6 +14,7 @@
 , libunwind
 , libdovi
 , xxHash
+, fast-float
 }:
 
 stdenv.mkDerivation rec {
@@ -46,6 +47,8 @@ stdenv.mkDerivation rec {
     libunwind
     libdovi
     xxHash
+  ] ++ lib.optionals (!stdenv.cc.isGNU) [
+    fast-float
   ];
 
   mesonFlags = with lib; [
diff --git a/pkgs/development/libraries/libredwg/default.nix b/pkgs/development/libraries/libredwg/default.nix
index 9f530271771a..7759917d9750 100644
--- a/pkgs/development/libraries/libredwg/default.nix
+++ b/pkgs/development/libraries/libredwg/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, fetchpatch
 , autoreconfHook
 , writeShellScript
 , pkg-config
@@ -27,6 +28,14 @@ stdenv.mkDerivation rec {
     fetchSubmodules = true;
   };
 
+  patches = [
+    (fetchpatch {
+      name = "CVE-2023-26157.patch";
+      url = "https://github.com/LibreDWG/libredwg/commit/c8cf03ce4c2315b146caf582ea061c0460193bcc.patch";
+      hash = "sha256-EEF3YYPW+6SvXRiAw3zz6tWU9w/qmGtc09Tf8wn7hVc=";
+    })
+  ];
+
   postPatch = let
     printVersion = writeShellScript "print-version" ''
       echo -n ${lib.escapeShellArg version}
diff --git a/pkgs/development/libraries/libucl/default.nix b/pkgs/development/libraries/libucl/default.nix
index 9ba96644102e..f684b52a1105 100644
--- a/pkgs/development/libraries/libucl/default.nix
+++ b/pkgs/development/libraries/libucl/default.nix
@@ -25,13 +25,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "libucl";
-  version = "0.8.2";
+  version = "0.9.0";
 
   src = fetchFromGitHub {
     owner = "vstakhov";
     repo = pname;
     rev = version;
-    sha256 = "sha256-rpTc0gq8HquDow4NEkRSjyESEMrv8dAhX98yKKu/Fsk=";
+    sha256 = "sha256-uMkILLG2SC+Q+w7jb0PMsaTET2z1V9Ar0lQhXS1K2+g=";
   };
 
   nativeBuildInputs = [ pkg-config autoreconfHook ];
diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix
index ff40c3693fff..17875c415b14 100644
--- a/pkgs/development/libraries/libvirt/default.nix
+++ b/pkgs/development/libraries/libvirt/default.nix
@@ -114,13 +114,13 @@ stdenv.mkDerivation rec {
   # NOTE: You must also bump:
   # <nixpkgs/pkgs/development/python-modules/libvirt/default.nix>
   # SysVirt in <nixpkgs/pkgs/top-level/perl-packages.nix>
-  version = "9.10.0";
+  version = "10.0.0";
 
   src = fetchFromGitLab {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-SYk3aseaVD31rnGKj/7eoLldGbOdJfKMw4tVDjtjcwY=";
+    hash = "sha256-xFl8AHcbeuydWzhJNnwZ3Bd7TQiTU8hjBxaALXvcLgE=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/libraries/mailcore2/default.nix b/pkgs/development/libraries/mailcore2/default.nix
index 77e7669c0e12..86b4a320b68f 100644
--- a/pkgs/development/libraries/mailcore2/default.nix
+++ b/pkgs/development/libraries/mailcore2/default.nix
@@ -1,5 +1,6 @@
 { stdenv, lib, fetchFromGitHub, cmake, libetpan, icu, cyrus_sasl, libctemplate
 , libuchardet, pkg-config, glib, html-tidy, libxml2, libuuid, openssl
+, darwin
 }:
 
 stdenv.mkDerivation rec {
@@ -16,8 +17,14 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [
-    libetpan icu cyrus_sasl libctemplate libuchardet glib
-    html-tidy libxml2 libuuid openssl
+    libetpan cyrus_sasl libctemplate libuchardet
+    html-tidy libxml2 openssl
+  ] ++ lib.optionals stdenv.isLinux [
+    glib
+    icu
+    libuuid
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.Foundation
   ];
 
   postPatch = ''
@@ -28,9 +35,14 @@ stdenv.mkDerivation rec {
        --replace "/usr/include/libxml2" "${libxml2.dev}/include/libxml2"
     substituteInPlace src/core/basetypes/MCHTMLCleaner.cpp \
       --replace buffio.h tidybuffio.h
+    substituteInPlace src/core/basetypes/MCString.cpp \
+      --replace "xmlErrorPtr" "const xmlError *"
+  '' + lib.optionalString (!stdenv.isDarwin) ''
+    substituteInPlace src/core/basetypes/MCICUTypes.h \
+      --replace "__CHAR16_TYPE__ UChar" "char16_t UChar"
   '';
 
-  cmakeFlags = [
+  cmakeFlags = lib.optionals (!stdenv.isDarwin) [
     "-DBUILD_SHARED_LIBS=ON"
   ];
 
@@ -39,10 +51,10 @@ stdenv.mkDerivation rec {
     cp -r src/include $out
 
     mkdir $out/lib
-    cp src/libMailCore.so $out/lib
+    cp src/libMailCore.* $out/lib
   '';
 
-  doCheck = true;
+  doCheck = !stdenv.isDarwin;
   checkPhase = ''
     (
       cd unittest
@@ -55,5 +67,6 @@ stdenv.mkDerivation rec {
     homepage    = "http://libmailcore.com";
     license     = licenses.bsd3;
     maintainers = with maintainers; [ ];
+    platforms   = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/maplibre-gl-native/default.nix b/pkgs/development/libraries/maplibre-gl-native/default.nix
index 65a5c266ee6a..3b2e988d4795 100644
--- a/pkgs/development/libraries/maplibre-gl-native/default.nix
+++ b/pkgs/development/libraries/maplibre-gl-native/default.nix
@@ -2,6 +2,7 @@
 , mkDerivation
 , fetchFromGitHub
 , fetchpatch
+, fetchpatch2
 , cmake
 , pkg-config
 , qtbase
@@ -30,6 +31,11 @@ mkDerivation rec {
       url = "https://git.alpinelinux.org/aports/plain/testing/mapbox-gl-native/0002-skip-license-check.patch?id=6751a93dca26b0b3ceec9eb151272253a2fe497e";
       sha256 = "1yybwzxbvn0lqb1br1fyg7763p2h117s6mkmywkl4l7qg9daa7ba";
     })
+    (fetchpatch2 {
+      name = "cstdint.patch";
+      url = "https://git.alpinelinux.org/aports/plain/community/maplibre-gl-native/cstdint.patch?id=ae8edc6b02df388ef37a69c12a5df25dd8550238";
+      hash = "sha256-o7wT/rk5vgwxEutAyIEAxwfKNxCoBtkhVcLjc7uTsYc=";
+    })
   ];
 
   postPatch = ''
diff --git a/pkgs/development/libraries/md4c/default.nix b/pkgs/development/libraries/md4c/default.nix
deleted file mode 100644
index 6504d99af3e9..000000000000
--- a/pkgs/development/libraries/md4c/default.nix
+++ /dev/null
@@ -1,67 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, pkg-config
-}:
-
-stdenv.mkDerivation rec {
-  pname = "md4c";
-  version = "0.4.8";
-
-  src = fetchFromGitHub {
-    owner = "mity";
-    repo = pname;
-    rev = "release-${version}";
-    hash = "sha256-+LObAD5JB8Vb4Rt4hTo1Z4ispxzfFkkXA2sw6TKB7Yo=";
-  };
-
-  patches = [
-    # We set CMAKE_INSTALL_LIBDIR to the absolute path in $out, so
-    # prefix and exec_prefix cannot be $out, too
-    # Use CMake's _FULL_ variables instead of `prefix` concatenation.
-    ./fix-pkgconfig.patch
-  ];
-
-  nativeBuildInputs = [
-    cmake
-    pkg-config
-  ];
-
-  meta = with lib; {
-    description = "Markdown parser made in C";
-    longDescription = ''
-      MD4C is Markdown parser implementation in C, with the following features:
-
-      - Compliance: Generally, MD4C aims to be compliant to the latest version
-        of CommonMark specification. Currently, we are fully compliant to
-        CommonMark 0.29.
-      - Extensions: MD4C supports some commonly requested and accepted
-        extensions. See below.
-      - Performance: MD4C is very fast.
-      - Compactness: MD4C parser is implemented in one source file and one
-        header file. There are no dependencies other than standard C library.
-      - Embedding: MD4C parser is easy to reuse in other projects, its API is
-        very straightforward: There is actually just one function, md_parse().
-      - Push model: MD4C parses the complete document and calls few callback
-        functions provided by the application to inform it about a start/end of
-        every block, a start/end of every span, and with any textual contents.
-      - Portability: MD4C builds and works on Windows and POSIX-compliant
-        OSes. (It should be simple to make it run also on most other platforms,
-        at least as long as the platform provides C standard library, including
-        a heap memory management.)
-      - Encoding: MD4C by default expects UTF-8 encoding of the input
-        document. But it can be compiled to recognize ASCII-only control
-        characters (i.e. to disable all Unicode-specific code), or (on Windows)
-        to expect UTF-16 (i.e. what is on Windows commonly called just
-        "Unicode"). See more details below.
-      - Permissive license: MD4C is available under the MIT license.
-    '';
-    homepage = "https://github.com/mity/md4c";
-    license = licenses.mit;
-    maintainers = with maintainers; [ AndersonTorres ];
-    mainProgram = "md2html";
-    platforms = platforms.all;
-  };
-}
-# TODO: enable tests (needs Python)
diff --git a/pkgs/development/libraries/md4c/fix-pkgconfig.patch b/pkgs/development/libraries/md4c/fix-pkgconfig.patch
deleted file mode 100644
index e0e9f3d96b2b..000000000000
--- a/pkgs/development/libraries/md4c/fix-pkgconfig.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 0ab8f5a6ee305cf4edcebfdc7b9eb5f98302de75 Mon Sep 17 00:00:00 2001
-From: Leif Middelschulte <Leif.Middelschulte@klsmartin.com>
-Date: Fri, 17 Sep 2021 16:16:17 +0200
-Subject: [PATCH] pc.in: use _FULL_ variable variants
-
-Nix' cmake packaging handler replaces the CMAKE_INSTALL_INCLUDEDIR
-with the absolute path. Which break package
-portability (i.e. `prefix`-usage).
----
- src/md4c-html.pc.in | 6 ++----
- src/md4c.pc.in      | 6 ++----
- 2 files changed, 4 insertions(+), 8 deletions(-)
-
-diff --git a/src/md4c-html.pc.in b/src/md4c-html.pc.in
-index 504bb52..fec7df4 100644
---- a/src/md4c-html.pc.in
-+++ b/src/md4c-html.pc.in
-@@ -1,7 +1,5 @@
--prefix=@CMAKE_INSTALL_PREFIX@
--exec_prefix=@CMAKE_INSTALL_PREFIX@
--libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
--includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
-+libdir=@CMAKE_INSTALL_FULL_LIBDIR@
-+includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
- 
- Name: @PROJECT_NAME@ HTML renderer
- Description: Markdown to HTML converter library.
-diff --git a/src/md4c.pc.in b/src/md4c.pc.in
-index cd8842d..b5d81f8 100644
---- a/src/md4c.pc.in
-+++ b/src/md4c.pc.in
-@@ -1,7 +1,5 @@
--prefix=@CMAKE_INSTALL_PREFIX@
--exec_prefix=@CMAKE_INSTALL_PREFIX@
--libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
--includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
-+libdir=@CMAKE_INSTALL_FULL_LIBDIR@
-+includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
- 
- Name: @PROJECT_NAME@
- Description: Markdown parser library with a SAX-like callback-based interface.
--- 
-2.31.0
-
diff --git a/pkgs/development/libraries/ncnn/cmakelists.patch b/pkgs/development/libraries/ncnn/cmakelists.patch
index bdb3063acec4..a43d7b0c4b72 100644
--- a/pkgs/development/libraries/ncnn/cmakelists.patch
+++ b/pkgs/development/libraries/ncnn/cmakelists.patch
@@ -1,18 +1,27 @@
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index c453d23e..66b4aa24 100644
+index 785e2cd..459024d 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -560,6 +560,8 @@ if(NCNN_VULKAN)
-                 message(WARNING "GLSLANG_TARGET_DIR must be defined! NCNN_SYSTEM_GLSLANG will be turned off.")
+@@ -589,7 +589,8 @@ endif()
+ if(NCNN_VULKAN)
+     if(NCNN_SYSTEM_GLSLANG)
+         find_package(Threads)
+-        find_package(glslang QUIET)
++        find_package(SPIRV-Tools-opt REQUIRED)
++        find_package(glslang REQUIRED)
+         if(glslang_FOUND)
+             add_library(glslang ALIAS glslang::glslang)
+             add_library(SPIRV ALIAS glslang::SPIRV)
+@@ -601,7 +602,6 @@ if(NCNN_VULKAN)
                  set(NCNN_SYSTEM_GLSLANG OFF)
              else()
-+                include("${GLSLANG_TARGET_DIR}/SPIRV-Tools/SPIRV-ToolsTarget.cmake")
-+                include("${GLSLANG_TARGET_DIR}/SPIRV-Tools-opt/SPIRV-Tools-optTargets.cmake")
                  include("${GLSLANG_TARGET_DIR}/OSDependentTargets.cmake")
-                 include("${GLSLANG_TARGET_DIR}/OGLCompilerTargets.cmake")
+-                include("${GLSLANG_TARGET_DIR}/OGLCompilerTargets.cmake")
                  if(EXISTS "${GLSLANG_TARGET_DIR}/HLSLTargets.cmake")
+                     # hlsl support can be optional
+                     include("${GLSLANG_TARGET_DIR}/HLSLTargets.cmake")
 diff --git a/src/ncnn.pc.in b/src/ncnn.pc.in
-index b580fcee..be2becd0 100644
+index b580fce..be2becd 100644
 --- a/src/ncnn.pc.in
 +++ b/src/ncnn.pc.in
 @@ -1,6 +1,6 @@
diff --git a/pkgs/development/libraries/ncnn/default.nix b/pkgs/development/libraries/ncnn/default.nix
index 69967eae160d..71b4bbc8fd42 100644
--- a/pkgs/development/libraries/ncnn/default.nix
+++ b/pkgs/development/libraries/ncnn/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ncnn";
-  version = "20231027";
+  version = "20240102";
 
   src = fetchFromGitHub {
     owner = "Tencent";
     repo = pname;
     rev = version;
-    sha256 = "sha256-ak/5QTOptg5M2I+3olnrBK6JZ01haIE6oh+sagEboAc=";
+    hash = "sha256-kk70oLY+2QJOkyYq10whLRMxBuibQMWMOBA9dcbKf/I=";
   };
 
   patches = [
@@ -33,8 +33,6 @@ stdenv.mkDerivation rec {
     "-DNCNN_BUILD_TOOLS=0"
     "-DNCNN_SYSTEM_GLSLANG=1"
     "-DNCNN_PYTHON=0" # Should be an attribute
-
-    "-DGLSLANG_TARGET_DIR=${glslang}/lib/cmake"
   ];
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/openvdb/default.nix b/pkgs/development/libraries/openvdb/default.nix
index 530c57877cf8..c5397b259a30 100644
--- a/pkgs/development/libraries/openvdb/default.nix
+++ b/pkgs/development/libraries/openvdb/default.nix
@@ -20,6 +20,11 @@ stdenv.mkDerivation rec
 
   cmakeFlags = [ "-DOPENVDB_CORE_STATIC=OFF" ];
 
+  # error: aligned deallocation function of type 'void (void *, std::align_val_t) noexcept' is only available on macOS 10.13 or newer
+  env = lib.optionalAttrs (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "10.13" && lib.versionAtLeast tbb.version "2021.8.0") {
+    NIX_CFLAGS_COMPILE = "-faligned-allocation";
+  };
+
   postFixup = ''
     substituteInPlace $dev/lib/cmake/OpenVDB/FindOpenVDB.cmake \
       --replace \''${OPENVDB_LIBRARYDIR} $out/lib \
diff --git a/pkgs/development/libraries/openvino/cmake.patch b/pkgs/development/libraries/openvino/cmake.patch
deleted file mode 100644
index 0918baba918f..000000000000
--- a/pkgs/development/libraries/openvino/cmake.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-diff --git a/cmake/developer_package/linux_name.cmake b/cmake/developer_package/linux_name.cmake
-index 3e8c775770..2d5e00fb8b 100644
---- a/cmake/developer_package/linux_name.cmake
-+++ b/cmake/developer_package/linux_name.cmake
-@@ -6,25 +6,7 @@ include(target_flags)
- 
- if(LINUX)
-     function(get_linux_name res_var)
--        if(EXISTS "/etc/lsb-release")
--            # linux version detection using cat /etc/lsb-release
--            file(READ "/etc/lsb-release" release_data)
--            set(name_regex "DISTRIB_ID=([^ \n]*)\n")
--            set(version_regex "DISTRIB_RELEASE=([0-9]+(\\.[0-9]+)?)")
--        else()
--            execute_process(COMMAND find -L /etc/ -maxdepth 1 -type f -name *-release -exec cat {} \;
--                            OUTPUT_VARIABLE release_data
--                            RESULT_VARIABLE result)
--            string(REPLACE "Red Hat" "CentOS" release_data "${release_data}")
--            set(name_regex "NAME=\"([^ \"\n]*).*\"\n")
--            set(version_regex "VERSION=\"([0-9]+(\\.[0-9]+)?)[^\n]*\"")
--        endif()
--
--        string(REGEX MATCH ${name_regex} name ${release_data})
--        set(os_name ${CMAKE_MATCH_1})
--
--        string(REGEX MATCH ${version_regex} version ${release_data})
--        set(os_name "${os_name} ${CMAKE_MATCH_1}")
-+        set(os_name "NixOS @version@")
- 
-         if(os_name)
-             set(${res_var} ${os_name} PARENT_SCOPE)
diff --git a/pkgs/development/libraries/openvino/default.nix b/pkgs/development/libraries/openvino/default.nix
index 26fac012948d..186e1048823a 100644
--- a/pkgs/development/libraries/openvino/default.nix
+++ b/pkgs/development/libraries/openvino/default.nix
@@ -1,8 +1,8 @@
 { lib
-, stdenv
+, gcc12Stdenv
 , fetchFromGitHub
+, fetchpatch2
 , fetchurl
-, substituteAll
 , cudaSupport ? opencv.cudaSupport or false
 
 # build
@@ -14,45 +14,62 @@
 , pkg-config
 , python
 , shellcheck
+, sphinx
 
 # runtime
+, flatbuffers
 , libusb1
 , libxml2
 , ocl-icd
 , opencv
 , protobuf
 , pugixml
+, snappy
 , tbb
 , cudaPackages
 }:
 
 let
+  inherit (lib)
+    cmakeBool
+  ;
+
+  stdenv = gcc12Stdenv;
+
   # See GNA_VERSION in cmake/dependencies.cmake
-  gna_version = "03.05.00.1906";
+  gna_version = "03.05.00.2116";
   gna = fetchurl {
     url = "https://storage.openvinotoolkit.org/dependencies/gna/gna_${gna_version}.zip";
-    hash = "sha256-SlvobZwCaw4Qr6wqV/x8mddisw49UGq7OjOA+8/icm4=";
+    hash = "sha256-lgNQVncCvaFydqxMBg11JPt8587XhQBL2GHIH/K/4sU=";
   };
 
   tbbbind_version = "2_5";
   tbbbind = fetchurl {
-    url = "https://storage.openvinotoolkit.org/dependencies/thirdparty/linux/tbbbind_${tbbbind_version}_static_lin_v3.tgz";
-    hash = "sha256-053rJiwGmBteLS48WT6fyb5izk/rkd1OZI6SdTZZprM=";
+    url = "https://storage.openvinotoolkit.org/dependencies/thirdparty/linux/tbbbind_${tbbbind_version}_static_lin_v4.tgz";
+    hash = "sha256-Tr8wJGUweV8Gb7lhbmcHxrF756ZdKdNRi1eKdp3VTuo=";
   };
 in
 
 stdenv.mkDerivation rec {
   pname = "openvino";
-  version = "2023.0.0";
+  version = "2023.3.0";
 
   src = fetchFromGitHub {
     owner = "openvinotoolkit";
     repo = "openvino";
     rev = "refs/tags/${version}";
     fetchSubmodules = true;
-    hash = "sha256-z88SgAZ0UX9X7BhBA7/NU/UhVLltb6ANKolruU8YiZQ=";
+    hash = "sha256-dXlQhar5gz+1iLmDYXUY0jZKh4rJ+khRpoZQphJXfcU=";
   };
 
+  patches = [
+    (fetchpatch2 {
+      name = "enable-js-toggle.patch";
+      url = "https://github.com/openvinotoolkit/openvino/commit/0a8f1383826d949c497fe3d05fef9ad2b662fa7e.patch";
+      hash = "sha256-mQYunouPo3tRlD5Yp4EUth324ccNnVX8zmjPHvJBYKw=";
+    })
+  ];
+
   outputs = [
     "out"
     "python"
@@ -71,17 +88,11 @@ stdenv.mkDerivation rec {
       setuptools
     ]))
     shellcheck
+    sphinx
   ] ++ lib.optionals cudaSupport [
     cudaPackages.cuda_nvcc
   ];
 
-  patches = [
-    (substituteAll {
-      src = ./cmake.patch;
-      inherit (lib) version;
-    })
-  ];
-
   postPatch = ''
     mkdir -p temp/gna_${gna_version}
     pushd temp/
@@ -100,30 +111,35 @@ stdenv.mkDerivation rec {
   dontUseCmakeBuildDir = true;
 
   cmakeFlags = [
-    "-DCMAKE_PREFIX_PATH:PATH=${placeholder "out"}"
+    "-Wno-dev"
     "-DCMAKE_MODULE_PATH:PATH=${placeholder "out"}/lib/cmake"
-    "-DENABLE_LTO:BOOL=ON"
-    # protobuf
-    "-DENABLE_SYSTEM_PROTOBUF:BOOL=OFF"
-    "-DProtobuf_LIBRARIES=${protobuf}/lib/libprotobuf${stdenv.hostPlatform.extensions.sharedLibrary}"
-    # tbb
-    "-DENABLE_SYSTEM_TBB:BOOL=ON"
-    # opencv
-    "-DENABLE_OPENCV:BOOL=ON"
+    "-DCMAKE_PREFIX_PATH:PATH=${placeholder "out"}"
     "-DOpenCV_DIR=${opencv}/lib/cmake/opencv4/"
-    # pugixml
-    "-DENABLE_SYSTEM_PUGIXML:BOOL=ON"
-    # onednn
-    "-DENABLE_ONEDNN_FOR_GPU:BOOL=OFF"
-    # intel gna
-    "-DENABLE_INTEL_GNA:BOOL=ON"
-    # python
-    "-DENABLE_PYTHON:BOOL=ON"
-    # tests
-    "-DENABLE_CPPLINT:BOOL=OFF"
-    "-DBUILD_TESTING:BOOL=OFF"
-    "-DENABLE_SAMPLES:BOOL=OFF"
-    (lib.cmakeBool "CMAKE_VERBOSE_MAKEFILE" true)
+    "-DProtobuf_LIBRARIES=${protobuf}/lib/libprotobuf${stdenv.hostPlatform.extensions.sharedLibrary}"
+
+    (cmakeBool "CMAKE_VERBOSE_MAKEFILE" true)
+    (cmakeBool "NCC_SYLE" false)
+    (cmakeBool "BUILD_TESTING" false)
+    (cmakeBool "ENABLE_CPPLINT" false)
+    (cmakeBool "ENABLE_TESTING" false)
+    (cmakeBool "ENABLE_SAMPLES" false)
+
+    # features
+    (cmakeBool "ENABLE_INTEL_CPU" true)
+    (cmakeBool "ENABLE_INTEL_GNA" true)
+    (cmakeBool "ENABLE_JS" false)
+    (cmakeBool "ENABLE_LTO" true)
+    (cmakeBool "ENABLE_ONEDNN_FOR_GPU" false)
+    (cmakeBool "ENABLE_OPENCV" true)
+    (cmakeBool "ENABLE_PYTHON" true)
+
+    # system libs
+    (cmakeBool "ENABLE_SYSTEM_FLATBUFFERS" true)
+    (cmakeBool "ENABLE_SYSTEM_OPENCL" true)
+    (cmakeBool "ENABLE_SYSTEM_PROTOBUF" false)
+    (cmakeBool "ENABLE_SYSTEM_PUGIXML" true)
+    (cmakeBool "ENABLE_SYSTEM_SNAPPY" true)
+    (cmakeBool "ENABLE_SYSTEM_TBB" true)
   ];
 
   env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isAarch64 "-Wno-narrowing";
@@ -133,12 +149,13 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
+    flatbuffers
     libusb1
     libxml2
     ocl-icd
     opencv.cxxdev
-    protobuf
     pugixml
+    snappy
     tbb
   ] ++ lib.optionals cudaSupport [
     cudaPackages.cuda_cudart
@@ -147,11 +164,9 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   postInstall = ''
-    pushd $out/python/python${lib.versions.majorMinor python.version}
     mkdir -p $python
-    mv ./* $python/
-    popd
-    rm -r $out/python
+    mv $out/python/* $python/
+    rmdir $out/python
   '';
 
   postFixup = ''
diff --git a/pkgs/development/libraries/protobuf/25.nix b/pkgs/development/libraries/protobuf/25.nix
index b994f6060942..0b05e81cc029 100644
--- a/pkgs/development/libraries/protobuf/25.nix
+++ b/pkgs/development/libraries/protobuf/25.nix
@@ -1,6 +1,6 @@
 { callPackage, ... } @ args:
 
 callPackage ./generic.nix ({
-  version = "25.1";
-  hash = "sha256-w6556kxftVZ154LrZB+jv9qK+QmMiUOGj6EcNwiV+yo=";
+  version = "25.2";
+  hash = "sha256-Bw7xOgcGLshFppH4qD8E48D8v21ZJRaRkK19LPSATMg=";
 } // args)
diff --git a/pkgs/development/libraries/qwlroots/default.nix b/pkgs/development/libraries/qwlroots/default.nix
new file mode 100644
index 000000000000..85282afb15b5
--- /dev/null
+++ b/pkgs/development/libraries/qwlroots/default.nix
@@ -0,0 +1,69 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, pkg-config
+, wrapQtAppsHook
+, wayland-scanner
+, qtbase
+, wayland
+, wayland-protocols
+, wlr-protocols
+, pixman
+, mesa
+, vulkan-loader
+, libinput
+, xorg
+, seatd
+, wlroots
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "qwlroots";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "vioken";
+    repo = "qwlroots";
+    rev = finalAttrs.version;
+    hash = "sha256-ev4oCKR43XaYNTavj9XI3RAtB6RFprChpBFsrA2nVsM=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    wrapQtAppsHook
+    wayland-scanner
+  ];
+
+  buildInputs = [
+    qtbase
+    wayland
+    wayland-protocols
+    wlr-protocols
+    pixman
+    mesa
+    vulkan-loader
+    libinput
+    xorg.libXdmcp
+    xorg.xcbutilerrors
+    seatd
+  ];
+
+  propagatedBuildInputs = [
+    wlroots
+  ];
+
+  cmakeFlags = [
+    (lib.cmakeBool "PREFER_QT_5" (lib.versionOlder qtbase.version "6"))
+  ];
+
+  meta = {
+    description = "Qt and QML bindings for wlroots";
+    homepage = "https://github.com/vioken/qwlroots";
+    license = with lib.licenses; [ gpl3Only lgpl3Only asl20 ];
+    platforms = wlroots.meta.platforms;
+    maintainers = with lib.maintainers; [ rewine ];
+  };
+})
+
diff --git a/pkgs/development/libraries/rapidfuzz-cpp/default.nix b/pkgs/development/libraries/rapidfuzz-cpp/default.nix
index 2668025bcbe1..f24da2c899f1 100644
--- a/pkgs/development/libraries/rapidfuzz-cpp/default.nix
+++ b/pkgs/development/libraries/rapidfuzz-cpp/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , cmake
 , catch2_3
+, python3Packages
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -33,6 +34,13 @@ stdenv.mkDerivation (finalAttrs: {
     catch2_3
   ];
 
+  passthru = {
+    tests = {
+      /** `python3Packages.levenshtein` crucially depends on `rapidfuzz-cpp` */
+      inherit (python3Packages) levenshtein;
+    };
+  };
+
   meta = {
     description = "Rapid fuzzy string matching in C++ using the Levenshtein Distance";
     homepage = "https://github.com/maxbachmann/rapidfuzz-cpp";
diff --git a/pkgs/development/libraries/redis-plus-plus/default.nix b/pkgs/development/libraries/redis-plus-plus/default.nix
index 03a5c9ba3308..bd40330194a7 100644
--- a/pkgs/development/libraries/redis-plus-plus/default.nix
+++ b/pkgs/development/libraries/redis-plus-plus/default.nix
@@ -8,13 +8,13 @@ assert enableShared || enableStatic;
 
 stdenv.mkDerivation rec {
   pname = "redis-plus-plus";
-  version = "1.3.11";
+  version = "1.3.12";
 
   src = fetchFromGitHub {
     owner = "sewenew";
     repo = "redis-plus-plus";
     rev = version;
-    sha256 = "sha256-ZALnF2h+9LSeh1OA33fdVyT0PYcGen5j+qsufBv5t5I=";
+    sha256 = "sha256-RI7lLvRmS5BglvwRQ8OzSpYIyaKkf/DKrJ3fn1mWYfs=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/rlottie/default.nix b/pkgs/development/libraries/rlottie/default.nix
index 3d4e8a5a6641..cbc46f819e5f 100644
--- a/pkgs/development/libraries/rlottie/default.nix
+++ b/pkgs/development/libraries/rlottie/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , fetchpatch
-, meson
+, cmake
 , ninja
 , pkg-config
 }:
@@ -26,7 +26,11 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ meson ninja pkg-config ];
+  nativeBuildInputs = [ cmake ninja pkg-config ];
+
+  cmakeFlags = [
+    (lib.cmakeFeature "LIB_INSTALL_DIR" "${placeholder "out"}/lib")
+  ];
 
   env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) "-U__ARM_NEON__";
 
diff --git a/pkgs/development/libraries/rure/Cargo.lock b/pkgs/development/libraries/rure/Cargo.lock
index 87e4050f534d..a5ba9527382e 100644
--- a/pkgs/development/libraries/rure/Cargo.lock
+++ b/pkgs/development/libraries/rure/Cargo.lock
@@ -13,9 +13,9 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.152"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
 name = "memchr"
diff --git a/pkgs/development/libraries/science/astronomy/indilib/default.nix b/pkgs/development/libraries/science/astronomy/indilib/default.nix
index 3fae85187deb..c38842f128c7 100644
--- a/pkgs/development/libraries/science/astronomy/indilib/default.nix
+++ b/pkgs/development/libraries/science/astronomy/indilib/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "indilib";
-  version = "2.0.5";
+  version = "2.0.6";
 
   src = fetchFromGitHub {
     owner = "indilib";
     repo = "indi";
     rev = "v${version}";
-    hash = "sha256-n1zj1U26l30JYr5Tio5zwv8v/e2cjEeIRGsyncMtt9I=";
+    hash = "sha256-3MeF2G/rr//c7cgGzqDzmqoNKvR+7Kkbid1g8znKPkg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix b/pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix
new file mode 100644
index 000000000000..74f24e10f55f
--- /dev/null
+++ b/pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix
@@ -0,0 +1,42 @@
+{ buildPythonPackage
+, pkg-config
+, meson
+, simple-dftd3
+, cffi
+, numpy
+, toml
+, qcengine
+, pyscf
+, ase
+, pytestCheckHook
+}:
+
+buildPythonPackage {
+  inherit (simple-dftd3) pname version src meta;
+
+  # pytest is also required for installation, not only testing
+  nativeBuildInputs = [ pytestCheckHook ];
+
+  buildInputs = [ simple-dftd3 ];
+
+  propagatedBuildInputs = [
+    cffi
+    numpy
+    toml
+  ];
+
+  checkInputs = [
+    ase
+    qcengine
+    pyscf
+  ];
+
+  preConfigure = ''
+    cd python
+  '';
+
+  # The compiled CFFI is not placed correctly before pytest invocation
+  preCheck = ''
+    find . -name "_libdftd3*" -exec cp {} ./dftd3/. \;
+  '';
+}
diff --git a/pkgs/development/libraries/science/networking/ns-3/default.nix b/pkgs/development/libraries/science/networking/ns-3/default.nix
index dd28553d60e9..fa6e5e48f846 100644
--- a/pkgs/development/libraries/science/networking/ns-3/default.nix
+++ b/pkgs/development/libraries/science/networking/ns-3/default.nix
@@ -120,7 +120,7 @@ stdenv.mkDerivation rec {
     "-DPython3_EXECUTABLE=${pythonEnv}/bin/python"
     "-DNS3_PYTHON_BINDINGS=ON"
     "-DNS3_DES_METRICS=ON"
-    "-DNS3_BINDINGS_INSTALL_DIR=lib/${pythonEnv.libPrefix}/site-packages"
+    "-DNS3_BINDINGS_INSTALL_DIR=${pythonEnv.sitePackages}"
     "-DNS3_LOG=ON"
     "-DNS3_ASSERT=ON"
     "-DNS3_GTK3=ON"
diff --git a/pkgs/development/libraries/simdjson/default.nix b/pkgs/development/libraries/simdjson/default.nix
index 3a25dd22f203..768587534778 100644
--- a/pkgs/development/libraries/simdjson/default.nix
+++ b/pkgs/development/libraries/simdjson/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "simdjson";
-  version = "3.6.3";
+  version = "3.6.4";
 
   src = fetchFromGitHub {
     owner = "simdjson";
     repo = "simdjson";
     rev = "v${version}";
-    sha256 = "sha256-PRXFZvwod/n27Tx9OALHdSlKsbsrNi5ij70A4ZSoeGc=";
+    sha256 = "sha256-yIZKlKp4p1HJBAdba+57sGl0ri0gGtjSgZQ16/vDE34=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/spglib/default.nix b/pkgs/development/libraries/spglib/default.nix
index 724a9f52d509..4c7fac7e2918 100644
--- a/pkgs/development/libraries/spglib/default.nix
+++ b/pkgs/development/libraries/spglib/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "spglib";
-  version = "2.2.0"; # N.B: if you change this, please update: pythonPackages.spglib
+  version = "2.3.0"; # N.B: if you change this, please update: pythonPackages.spglib
 
   src = fetchFromGitHub {
     owner = "spglib";
     repo = "spglib";
     rev = "v${version}";
-    hash = "sha256-VaTW7n7DTeYBr/PrxPhfzfx/gLxzJikw5aL1tEbMtbs=";
+    hash = "sha256-S/i0sIg7VwgpnB2Uo0d4FdVcSIb5tcGJ+0URmkNkxe8=";
   };
 
   nativeBuildInputs = [ cmake gfortran gtest ];
diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix
index eb4d975a6e01..952fc28eae4c 100644
--- a/pkgs/development/libraries/sqlite/default.nix
+++ b/pkgs/development/libraries/sqlite/default.nix
@@ -5,8 +5,6 @@
 
 # uses readline & ncurses for a better interactive experience if set to true
 , interactive ? false
-# TODO: can be removed since 3.36 since it is the default now.
-, enableDeserialize ? false
 
 , gitUpdater
 }:
@@ -54,9 +52,6 @@ stdenv.mkDerivation rec {
     "-DSQLITE_SECURE_DELETE"
     "-DSQLITE_MAX_VARIABLE_NUMBER=250000"
     "-DSQLITE_MAX_EXPR_DEPTH=10000"
-  ] ++ lib.optionals enableDeserialize [
-    # Can be removed in v3.36+, as this will become the default
-    "-DSQLITE_ENABLE_DESERIALIZE"
   ]);
 
   # Test for features which may not be available at compile time
diff --git a/pkgs/development/libraries/talloc/default.nix b/pkgs/development/libraries/talloc/default.nix
index bfe38fd4719a..73cb8a65a162 100644
--- a/pkgs/development/libraries/talloc/default.nix
+++ b/pkgs/development/libraries/talloc/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   pname = "talloc";
-  version = "2.4.1";
+  version = "2.4.2";
 
   src = fetchurl {
     url = "mirror://samba/talloc/${pname}-${version}.tar.gz";
-    sha256 = "sha256-QQpUfwhVcAe+DogZTyGIaDWO3Aq5jJi6jBZ5MNs9M/k=";
+    sha256 = "sha256-hez55GXiD5j5lQpS6aQR4UMgvFVfolfYdpe356mx2KY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/vigra/default.nix b/pkgs/development/libraries/vigra/default.nix
index 320b43f0e51b..677406d275a8 100644
--- a/pkgs/development/libraries/vigra/default.nix
+++ b/pkgs/development/libraries/vigra/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
     python
   ];
 
-  preConfigure = "cmakeFlags+=\" -DVIGRANUMPY_INSTALL_DIR=$out/lib/${python.libPrefix}/site-packages\"";
+  preConfigure = "cmakeFlags+=\" -DVIGRANUMPY_INSTALL_DIR=$out/${python.sitePackages}\"";
 
   cmakeFlags = [ "-DWITH_OPENEXR=1" ]
     ++ lib.optionals (stdenv.hostPlatform.system == "x86_64-linux")
diff --git a/pkgs/development/libraries/wasilibc/default.nix b/pkgs/development/libraries/wasilibc/default.nix
index 4c49788464d4..c0714a78556a 100644
--- a/pkgs/development/libraries/wasilibc/default.nix
+++ b/pkgs/development/libraries/wasilibc/default.nix
@@ -8,7 +8,7 @@
 
 let
   pname = "wasilibc";
-  version = "20";
+  version = "21";
 in
 stdenv.mkDerivation {
   inherit pname version;
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
     owner = "WebAssembly";
     repo = "wasi-libc";
     rev = "refs/tags/wasi-sdk-${version}";
-    hash = "sha256-H92PDrH1FL7S3eMCK1+wqclryjhwghl21bOlRCAr1U4=";
+    hash = "sha256-1LsMpO29y79twVrUsuM/JvC7hK8O6Yey4Ard/S3Mvvc=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/libraries/waylib/default.nix b/pkgs/development/libraries/waylib/default.nix
new file mode 100644
index 000000000000..9aa211ffd3e0
--- /dev/null
+++ b/pkgs/development/libraries/waylib/default.nix
@@ -0,0 +1,74 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, pkg-config
+, wayland-scanner
+, wrapQtAppsHook
+, qtbase
+, qtquick3d
+, qwlroots
+, wayland
+, wayland-protocols
+, wlr-protocols
+, pixman
+, libdrm
+, nixos-artwork
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "waylib";
+  version = "0.1.1";
+
+  src = fetchFromGitHub {
+    owner = "vioken";
+    repo = "waylib";
+    rev = finalAttrs.version;
+    hash = "sha256-3IdrChuXQyQGhJ/7kTqmkV0PyuSNP53Y0Po01Fc9Qi0=";
+  };
+
+  postPatch = ''
+    substituteInPlace examples/tinywl/OutputDelegate.qml \
+      --replace "/usr/share/wallpapers/deepin/desktop.jpg" \
+                "${nixos-artwork.wallpapers.simple-blue}/share/backgrounds/nixos/nix-wallpaper-simple-blue.png"
+  '';
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    wayland-scanner
+    wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    qtbase
+    qtquick3d
+    wayland
+    wayland-protocols
+    wlr-protocols
+    pixman
+    libdrm
+  ];
+
+  propagatedBuildInputs = [
+    qwlroots
+  ];
+
+  cmakeFlags = [
+    (lib.cmakeBool "INSTALL_TINYWL" true)
+  ];
+
+  strictDeps = true;
+
+  outputs = [ "out" "dev" "bin" ];
+
+  meta = {
+    description = "A wrapper for wlroots based on Qt";
+    homepage = "https://github.com/vioken/waylib";
+    license = with lib.licenses; [ gpl3Only lgpl3Only asl20 ];
+    outputsToInstall = [ "out" ];
+    platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [ rewine ];
+  };
+})
+
diff --git a/pkgs/development/libraries/xxHash/default.nix b/pkgs/development/libraries/xxHash/default.nix
index f7631de1bf29..c78fc302afe4 100644
--- a/pkgs/development/libraries/xxHash/default.nix
+++ b/pkgs/development/libraries/xxHash/default.nix
@@ -37,6 +37,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://github.com/Cyan4973/xxHash";
     license = with licenses; [ bsd2 gpl2 ];
+    mainProgram = "xxhsum";
     maintainers = with maintainers; [ orivej ];
     platforms = platforms.all;
   };
diff --git a/pkgs/development/misc/umr/default.nix b/pkgs/development/misc/umr/default.nix
index b83cb91a91b5..37177f926b68 100644
--- a/pkgs/development/misc/umr/default.nix
+++ b/pkgs/development/misc/umr/default.nix
@@ -1,28 +1,50 @@
-{ lib, stdenv, fetchgit, bash-completion, cmake, pkg-config
-, json_c, libdrm, libpciaccess, llvmPackages, nanomsg, ncurses, SDL2
+{ lib
+, stdenv
+
+, fetchFromGitLab
+
+, cmake
+, pkg-config
+
+, libdrm
+, mesa # libgbm
+, libpciaccess
+, llvmPackages
+, nanomsg
+, ncurses
+, SDL2
+, bash-completion
+
+, nix-update-script
 }:
 
 stdenv.mkDerivation rec {
   pname = "umr";
-  version = "unstable-2022-08-23";
+  version = "1.0.8";
 
-  src = fetchgit {
-    url = "https://gitlab.freedesktop.org/tomstdenis/umr";
-    rev = "87f814b1ffdbac8bfddd8529d344a7901cd7e112";
-    hash = "sha256-U1VP1AicSGWzBwzz99i7+3awATZocw5jaqtAxuRNaBE=";
+  src = fetchFromGitLab {
+    domain = "gitlab.freedesktop.org";
+    owner = "tomstdenis";
+    repo = "umr";
+    rev = version;
+    hash = "sha256-ODkTYHDrKWNvjiEeIyfsCByf7hyr5Ps9ytbKb3253bU=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config llvmPackages.llvm.dev ];
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
 
   buildInputs = [
-    bash-completion
-    json_c
     libdrm
+    mesa
     libpciaccess
     llvmPackages.llvm
     nanomsg
     ncurses
     SDL2
+
+    bash-completion # Tries to create bash-completions in /var/empty otherwise?
   ];
 
   # Remove static libraries (there are no dynamic libraries in there)
@@ -30,6 +52,8 @@ stdenv.mkDerivation rec {
     rm -r $out/lib
   '';
 
+  passthru.updateScript = nix-update-script { };
+
   meta = with lib; {
     description = "A userspace debugging and diagnostic tool for AMD GPUs";
     homepage = "https://gitlab.freedesktop.org/tomstdenis/umr";
diff --git a/pkgs/development/node-packages/aliases.nix b/pkgs/development/node-packages/aliases.nix
index ffe26a735d97..34751db8f193 100644
--- a/pkgs/development/node-packages/aliases.nix
+++ b/pkgs/development/node-packages/aliases.nix
@@ -50,6 +50,7 @@ mapAliases {
   "@nerdwallet/shepherd" = pkgs.shepherd; # added 2023-09-30
   "@nestjs/cli" = pkgs.nest-cli; # Added 2023-05-06
   "@tailwindcss/language-server" = pkgs.tailwindcss-language-server; # added 2024-01-22
+  "@withgraphite/graphite-cli" = pkgs.graphite-cli; # added 2024-01-25
   "@zwave-js/server" = pkgs.zwave-js-server; # Added 2023-09-09
   alloy = pkgs.titanium-alloy; # added 2023-08-17
   antennas = pkgs.antennas; # added 2023-07-30
@@ -82,6 +83,7 @@ mapAliases {
   inherit (pkgs) gitmoji-cli; # added 2023-09-23
   glob = pkgs.node-glob; # added 2023-08-18
   inherit (pkgs) gqlint; # added 2023-08-19
+  inherit (pkgs) graphite-cli; # added 2024-01-25
   inherit (pkgs) graphqurl; # added 2023-08-19
   gtop = pkgs.gtop; # added 2023-07-31
   hs-client = pkgs.hsd; # added 2023-08-20
@@ -111,6 +113,7 @@ mapAliases {
   ocaml-language-server = throw "ocaml-language-server was removed because it was abandoned upstream"; # added 2023-09-04
   parcel-bundler = parcel; # added 2023-09-04
   pkg = pkgs.vercel-pkg; # added 2023-10-04
+  inherit (pkgs) pm2; # added 2024-01-22
   prettier_d_slim = pkgs.prettier-d-slim; # added 2023-09-14
   inherit (pkgs) pxder; # added 2023-09-26
   inherit (pkgs) quicktype; # added 2023-09-09
diff --git a/pkgs/development/node-packages/main-programs.nix b/pkgs/development/node-packages/main-programs.nix
index 2513bb481e52..77ce87da7aab 100644
--- a/pkgs/development/node-packages/main-programs.nix
+++ b/pkgs/development/node-packages/main-programs.nix
@@ -5,7 +5,6 @@
   "@electron-forge/cli" = "electron-forge";
   "@microsoft/rush" = "rush";
   "@webassemblyjs/cli-1.11.1" = "wasm2wast";
-  "@withgraphite/graphite-cli" = "gt";
 
   # Packages that provide a single executable.
   "@angular/cli" = "ng";
@@ -46,8 +45,12 @@
   poor-mans-t-sql-formatter-cli = "sqlformat";
   postcss-cli = "postcss";
   prettier = "prettier";
+  pulp = "pulp";
+  purescript-language-server = "purescript-language-server";
   purescript-psa = "psa";
   purs-tidy = "purs-tidy";
+  purty = "purty";
+  pscid = "pscid";
   remod-cli = "remod";
   svelte-language-server = "svelteserver";
   teck-programmer = "teck-firmware-upgrade";
diff --git a/pkgs/development/node-packages/node-packages.json b/pkgs/development/node-packages/node-packages.json
index d4a420320c64..de10dd251f41 100644
--- a/pkgs/development/node-packages/node-packages.json
+++ b/pkgs/development/node-packages/node-packages.json
@@ -186,7 +186,6 @@
 , "peerflix"
 , "peerflix-server"
 , {"pgrok-build-deps": "../../tools/networking/pgrok/build-deps"}
-, "pm2"
 , "pnpm"
 , "poor-mans-t-sql-formatter-cli"
 , "postcss"
@@ -300,7 +299,6 @@
 , "webpack-dev-server"
 , "copy-webpack-plugin"
 , "webtorrent-cli"
-, "@withgraphite/graphite-cli"
 , "wrangler"
 , "wring"
 , "@yaegassy/coc-nginx"
diff --git a/pkgs/development/node-packages/node-packages.nix b/pkgs/development/node-packages/node-packages.nix
index c03c1506797d..43dfa94a5c1a 100644
--- a/pkgs/development/node-packages/node-packages.nix
+++ b/pkgs/development/node-packages/node-packages.nix
@@ -92027,225 +92027,6 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
-  pm2 = nodeEnv.buildNodePackage {
-    name = "pm2";
-    packageName = "pm2";
-    version = "5.3.0";
-    src = fetchurl {
-      url = "https://registry.npmjs.org/pm2/-/pm2-5.3.0.tgz";
-      sha512 = "xscmQiAAf6ArVmKhjKTeeN8+Td7ZKnuZFFPw1DGkdFPR/0Iyx+m+1+OpCdf9+HQopX3VPc9/wqPQHqVOfHum9w==";
-    };
-    dependencies = [
-      (sources."@opencensus/core-0.0.9" // {
-        dependencies = [
-          sources."semver-5.7.2"
-        ];
-      })
-      (sources."@opencensus/propagation-b3-0.0.8" // {
-        dependencies = [
-          sources."@opencensus/core-0.0.8"
-          sources."semver-5.7.2"
-        ];
-      })
-      (sources."@pm2/agent-2.0.3" // {
-        dependencies = [
-          sources."dayjs-1.8.36"
-        ];
-      })
-      (sources."@pm2/io-5.0.2" // {
-        dependencies = [
-          sources."async-2.6.4"
-          sources."eventemitter2-6.4.9"
-          sources."tslib-1.9.3"
-        ];
-      })
-      (sources."@pm2/js-api-0.6.7" // {
-        dependencies = [
-          sources."async-2.6.4"
-          sources."eventemitter2-6.4.9"
-        ];
-      })
-      sources."@pm2/pm2-version-check-1.0.4"
-      sources."@tootallnate/quickjs-emscripten-0.23.0"
-      sources."agent-base-7.1.0"
-      sources."amp-0.3.1"
-      sources."amp-message-0.1.2"
-      sources."ansi-colors-4.1.3"
-      sources."ansi-styles-4.3.0"
-      sources."anymatch-3.1.3"
-      (sources."argparse-1.0.10" // {
-        dependencies = [
-          sources."sprintf-js-1.0.3"
-        ];
-      })
-      sources."ast-types-0.13.4"
-      sources."async-3.2.5"
-      (sources."async-listener-0.6.10" // {
-        dependencies = [
-          sources."semver-5.7.2"
-        ];
-      })
-      sources."axios-0.21.4"
-      sources."balanced-match-1.0.2"
-      sources."basic-ftp-5.0.4"
-      sources."binary-extensions-2.2.0"
-      sources."blessed-0.1.81"
-      sources."bodec-0.1.0"
-      sources."brace-expansion-1.1.11"
-      sources."braces-3.0.2"
-      sources."buffer-from-1.1.2"
-      sources."bufferutil-4.0.8"
-      sources."chalk-3.0.0"
-      sources."charm-0.1.2"
-      sources."chokidar-3.5.3"
-      sources."cli-tableau-2.0.1"
-      sources."color-convert-2.0.1"
-      sources."color-name-1.1.4"
-      sources."commander-2.15.1"
-      sources."concat-map-0.0.1"
-      sources."continuation-local-storage-3.2.1"
-      sources."croner-4.1.97"
-      sources."culvert-0.1.2"
-      sources."data-uri-to-buffer-6.0.1"
-      sources."dayjs-1.11.10"
-      sources."debug-4.3.4"
-      sources."degenerator-5.0.1"
-      sources."emitter-listener-1.1.2"
-      sources."enquirer-2.3.6"
-      sources."escape-string-regexp-4.0.0"
-      sources."escodegen-2.1.0"
-      sources."esprima-4.0.1"
-      sources."estraverse-5.3.0"
-      sources."esutils-2.0.3"
-      sources."eventemitter2-5.0.1"
-      sources."fast-json-patch-3.1.1"
-      sources."fclone-1.0.11"
-      sources."fill-range-7.0.1"
-      sources."follow-redirects-1.15.4"
-      sources."fs-extra-8.1.0"
-      sources."fs.realpath-1.0.0"
-      sources."fsevents-2.3.3"
-      sources."function-bind-1.1.2"
-      sources."get-uri-6.0.2"
-      sources."git-node-fs-1.0.0"
-      sources."git-sha1-0.1.2"
-      sources."glob-7.2.3"
-      sources."glob-parent-5.1.2"
-      sources."graceful-fs-4.2.11"
-      sources."has-flag-4.0.0"
-      sources."hasown-2.0.0"
-      sources."http-proxy-agent-7.0.0"
-      sources."https-proxy-agent-7.0.2"
-      sources."iconv-lite-0.4.24"
-      sources."inflight-1.0.6"
-      sources."inherits-2.0.4"
-      sources."ini-1.3.8"
-      sources."ip-1.1.8"
-      sources."is-binary-path-2.1.0"
-      sources."is-core-module-2.13.1"
-      sources."is-extglob-2.1.1"
-      sources."is-glob-4.0.3"
-      sources."is-number-7.0.0"
-      sources."js-git-0.7.8"
-      sources."json-stringify-safe-5.0.1"
-      sources."jsonfile-4.0.0"
-      sources."lazy-1.0.11"
-      sources."lodash-4.17.21"
-      sources."log-driver-1.2.7"
-      sources."lru-cache-7.18.3"
-      sources."minimatch-3.1.2"
-      sources."mkdirp-1.0.4"
-      sources."module-details-from-path-1.0.3"
-      sources."ms-2.1.2"
-      sources."mute-stream-0.0.8"
-      (sources."needle-2.4.0" // {
-        dependencies = [
-          sources."debug-3.2.7"
-        ];
-      })
-      sources."netmask-2.0.2"
-      sources."node-gyp-build-4.8.0"
-      sources."normalize-path-3.0.0"
-      (sources."nssocket-0.6.0" // {
-        dependencies = [
-          sources."eventemitter2-0.4.14"
-        ];
-      })
-      sources."once-1.4.0"
-      sources."pac-proxy-agent-7.0.1"
-      sources."pac-resolver-7.0.0"
-      sources."pako-0.2.9"
-      sources."path-is-absolute-1.0.1"
-      sources."path-parse-1.0.7"
-      sources."picomatch-2.3.1"
-      sources."pidusage-3.0.2"
-      sources."pm2-axon-4.0.1"
-      sources."pm2-axon-rpc-0.7.1"
-      sources."pm2-deploy-1.0.2"
-      sources."pm2-multimeter-0.1.2"
-      (sources."pm2-sysmonit-1.2.8" // {
-        dependencies = [
-          sources."pidusage-2.0.21"
-        ];
-      })
-      sources."promptly-2.2.0"
-      sources."proxy-agent-6.3.1"
-      sources."proxy-from-env-1.1.0"
-      sources."read-1.0.7"
-      sources."readdirp-3.6.0"
-      sources."require-in-the-middle-5.2.0"
-      sources."resolve-1.22.8"
-      sources."run-series-1.1.9"
-      sources."safe-buffer-5.2.1"
-      sources."safer-buffer-2.1.2"
-      sources."sax-1.3.0"
-      (sources."semver-7.5.4" // {
-        dependencies = [
-          sources."lru-cache-6.0.0"
-        ];
-      })
-      sources."shimmer-1.2.1"
-      sources."signal-exit-3.0.7"
-      sources."smart-buffer-4.2.0"
-      (sources."socks-2.7.1" // {
-        dependencies = [
-          sources."ip-2.0.0"
-        ];
-      })
-      sources."socks-proxy-agent-8.0.2"
-      sources."source-map-0.6.1"
-      sources."source-map-support-0.5.21"
-      sources."sprintf-js-1.1.2"
-      sources."supports-color-7.2.0"
-      sources."supports-preserve-symlinks-flag-1.0.0"
-      sources."systeminformation-5.21.22"
-      sources."to-regex-range-5.0.1"
-      sources."tslib-2.6.2"
-      sources."tv4-1.3.0"
-      sources."tx2-1.0.5"
-      sources."universalify-0.1.2"
-      sources."utf-8-validate-5.0.10"
-      sources."uuid-3.4.0"
-      (sources."vizion-2.2.1" // {
-        dependencies = [
-          sources."async-2.6.4"
-        ];
-      })
-      sources."wrappy-1.0.2"
-      sources."ws-7.4.6"
-      sources."yallist-4.0.0"
-      sources."yamljs-0.3.0"
-    ];
-    buildInputs = globalBuildInputs;
-    meta = {
-      description = "Production process manager for Node.JS applications with a built-in load balancer.";
-      homepage = "http://pm2.keymetrics.io/";
-      license = "AGPL-3.0";
-    };
-    production = true;
-    bypassCache = true;
-    reconstructLock = true;
-  };
   pnpm = nodeEnv.buildNodePackage {
     name = "pnpm";
     packageName = "pnpm";
@@ -101730,48 +101511,6 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
-  "@withgraphite/graphite-cli" = nodeEnv.buildNodePackage {
-    name = "_at_withgraphite_slash_graphite-cli";
-    packageName = "@withgraphite/graphite-cli";
-    version = "1.0.14";
-    src = fetchurl {
-      url = "https://registry.npmjs.org/@withgraphite/graphite-cli/-/graphite-cli-1.0.14.tgz";
-      sha512 = "VXgUM5RSYXMVc9i3E1A6j0CYNS5ScQjUXaKO9l3epOws5rxiyDa7QOl7tiSXTQw1eQKtzXxiwve+iWDZsPSDQw==";
-    };
-    dependencies = [
-      sources."ansi-regex-5.0.1"
-      sources."ansi-styles-4.3.0"
-      sources."bufferutil-4.0.8"
-      sources."chalk-4.1.2"
-      sources."cliui-8.0.1"
-      sources."color-convert-2.0.1"
-      sources."color-name-1.1.4"
-      sources."emoji-regex-8.0.0"
-      sources."escalade-3.1.1"
-      sources."get-caller-file-2.0.5"
-      sources."has-flag-4.0.0"
-      sources."is-fullwidth-code-point-3.0.0"
-      sources."node-gyp-build-4.8.0"
-      sources."require-directory-2.1.1"
-      sources."string-width-4.2.3"
-      sources."strip-ansi-6.0.1"
-      sources."supports-color-7.2.0"
-      sources."utf-8-validate-6.0.3"
-      sources."wrap-ansi-7.0.0"
-      sources."ws-8.16.0"
-      sources."y18n-5.0.8"
-      sources."yargs-17.7.2"
-      sources."yargs-parser-21.1.1"
-    ];
-    buildInputs = globalBuildInputs;
-    meta = {
-      homepage = "https://github.com/withgraphite/graphite-cli";
-      license = "None";
-    };
-    production = true;
-    bypassCache = true;
-    reconstructLock = true;
-  };
   wrangler = nodeEnv.buildNodePackage {
     name = "wrangler";
     packageName = "wrangler";
diff --git a/pkgs/development/node-packages/overrides.nix b/pkgs/development/node-packages/overrides.nix
index 88d9d76e46e3..f49f09126e42 100644
--- a/pkgs/development/node-packages/overrides.nix
+++ b/pkgs/development/node-packages/overrides.nix
@@ -72,23 +72,6 @@ final: prev: {
     '';
   };
 
-
-  graphite-cli = prev."@withgraphite/graphite-cli".override (old: {
-    name = "graphite-cli";
-    nativeBuildInputs = with pkgs; [ installShellFiles pkg-config ];
-    buildInputs = with pkgs; [ cairo pango pixman ];
-    # 'gt completion' auto-detects zshell from environment variables:
-    # https://github.com/yargs/yargs/blob/2b6ba3139396b2e623aed404293f467f16590039/lib/completion.ts#L45
-    postInstall = ''
-      installShellCompletion --cmd gt \
-        --bash <($out/bin/gt completion) \
-        --zsh <(ZSH_NAME=zsh $out/bin/gt completion)
-    '';
-    meta = old.meta // {
-      license = lib.licenses.unfree; # no license specified
-    };
-  });
-
   graphql-language-service-cli = prev.graphql-language-service-cli.override {
     nativeBuildInputs = [ pkgs.buildPackages.makeWrapper ];
     postInstall = ''
diff --git a/pkgs/development/ocaml-modules/lambdapi/default.nix b/pkgs/development/ocaml-modules/lambdapi/default.nix
index ddb428f720ee..f4d1cdb717b7 100644
--- a/pkgs/development/ocaml-modules/lambdapi/default.nix
+++ b/pkgs/development/ocaml-modules/lambdapi/default.nix
@@ -19,8 +19,7 @@ buildDunePackage rec {
   pname = "lambdapi";
   version = "2.3.1";
 
-  minimalOCamlVersion = "4.08";
-  duneVersion = "3";
+  minimalOCamlVersion = "4.12";
 
   src = fetchurl {
     url = "https://github.com/Deducteam/lambdapi/releases/download/${version}/lambdapi-${version}.tbz";
diff --git a/pkgs/development/ocaml-modules/riot/default.nix b/pkgs/development/ocaml-modules/riot/default.nix
index e830e7034e10..81d1a48773ea 100644
--- a/pkgs/development/ocaml-modules/riot/default.nix
+++ b/pkgs/development/ocaml-modules/riot/default.nix
@@ -1,8 +1,9 @@
 { lib
-, bigstringaf
 , buildDunePackage
+, cstruct
 , fetchurl
-, iomux
+, mdx
+, poll
 , ptime
 , telemetry
 , uri
@@ -10,24 +11,29 @@
 
 buildDunePackage rec {
   pname = "riot";
-  version = "0.0.5";
+  version = "0.0.7";
 
   minimalOCamlVersion = "5.1";
 
   src = fetchurl {
     url = "https://github.com/leostera/riot/releases/download/${version}/riot-${version}.tbz";
-    hash = "sha256-Abe4LMxlaxK3MVlg2d8X60aCuPGvaOn+4zFx/uH5z4g=";
+    hash = "sha256-t+PMBh4rZXi82dUljv3nLzZX5o1iagBbQ9FfGnr/dp4=";
   };
 
   propagatedBuildInputs = [
-    bigstringaf
-    iomux
+    cstruct
+    poll
     ptime
     telemetry
     uri
   ];
 
-  doCheck = true;
+  checkInputs = [
+    mdx
+    mdx.bin
+  ];
+
+  doCheck = false; # fails on sandbox
 
   meta = {
     description = "An actor-model multi-core scheduler for OCaml 5";
diff --git a/pkgs/development/ocaml-modules/timedesc/default.nix b/pkgs/development/ocaml-modules/timedesc/default.nix
new file mode 100644
index 000000000000..b77f5af17b40
--- /dev/null
+++ b/pkgs/development/ocaml-modules/timedesc/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, fetchurl
+, buildDunePackage
+, angstrom
+, ptime
+, seq
+, timedesc-tzdb
+, timedesc-tzlocal
+}:
+
+buildDunePackage rec {
+  pname = "timedesc";
+  version = "2.0.0";
+
+  src = fetchurl {
+    url = "https://github.com/daypack-dev/timere/releases/download/timedesc-${version}/timedesc-${version}.tar.gz";
+    hash = "sha256-NnnQpWOE1mt/F5lkWRPdDwpqXCUlcNi+Z5GE6YQQLK8=";
+  };
+
+  sourceRoot = ".";
+
+  propagatedBuildInputs = [
+    angstrom
+    ptime
+    seq
+    timedesc-tzdb
+    timedesc-tzlocal
+  ];
+
+  meta = {
+    description = "OCaml date time handling library";
+    homepage = "https://github.com/daypack-dev/timere";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/timedesc/tzdb.nix b/pkgs/development/ocaml-modules/timedesc/tzdb.nix
new file mode 100644
index 000000000000..95fab02d11a0
--- /dev/null
+++ b/pkgs/development/ocaml-modules/timedesc/tzdb.nix
@@ -0,0 +1,15 @@
+{ lib
+, buildDunePackage
+, timedesc
+}:
+
+buildDunePackage {
+  pname = "timedesc-tzdb";
+
+  inherit (timedesc) version src sourceRoot;
+
+  meta = timedesc.meta // {
+    description = "Virtual library for Timedesc time zone database backends";
+  };
+}
+
diff --git a/pkgs/development/ocaml-modules/timedesc/tzlocal.nix b/pkgs/development/ocaml-modules/timedesc/tzlocal.nix
new file mode 100644
index 000000000000..6dcbfd741075
--- /dev/null
+++ b/pkgs/development/ocaml-modules/timedesc/tzlocal.nix
@@ -0,0 +1,16 @@
+{ lib
+, buildDunePackage
+, timedesc
+}:
+
+buildDunePackage {
+  pname = "timedesc-tzlocal";
+
+  inherit (timedesc) version src sourceRoot;
+
+  minimalOCamlVersion = "4.08";
+
+  meta = timedesc.meta // {
+    description = "Virtual library for Timedesc local time zone detection backends";
+  };
+}
diff --git a/pkgs/development/ocaml-modules/tiny_httpd/default.nix b/pkgs/development/ocaml-modules/tiny_httpd/default.nix
index cb407ef585d9..2e8e537cba80 100644
--- a/pkgs/development/ocaml-modules/tiny_httpd/default.nix
+++ b/pkgs/development/ocaml-modules/tiny_httpd/default.nix
@@ -5,15 +5,15 @@
 
 buildDunePackage rec {
   pname = "tiny_httpd";
-  version = "0.12";
+  version = "0.16";
 
-  minimalOCamlVersion = "4.04";
+  minimalOCamlVersion = "4.08";
 
   src = fetchFromGitHub {
     owner = "c-cube";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256:1z9hzc0ib7pg9fsjmpggjqwrnip57izr2v0na7vc7s25lxsiag6a";
+    sha256 = "sha256-9L4WCduQNj5Jd/u3SozuXiGTkgojwfGIP5KgQmnWgQw=";
   };
 
   buildInputs = [ result ];
@@ -24,5 +24,6 @@ buildDunePackage rec {
     inherit (src.meta) homepage;
     license = lib.licenses.mit;
     maintainers = [ lib.maintainers.vbgl ];
+    mainProgram = "http_of_dir";
   };
 }
diff --git a/pkgs/development/ocaml-modules/zipc/default.nix b/pkgs/development/ocaml-modules/zipc/default.nix
index a4b22de3e94b..a31d2644e668 100644
--- a/pkgs/development/ocaml-modules/zipc/default.nix
+++ b/pkgs/development/ocaml-modules/zipc/default.nix
@@ -7,11 +7,11 @@ lib.throwIfNot (lib.versionAtLeast ocaml.version "4.14")
 
 stdenv.mkDerivation rec {
   pname = "ocaml${ocaml.version}-zipc";
-  version = "0.1.0";
+  version = "0.2.0";
 
   src = fetchurl {
     url = "https://erratique.ch/software/zipc/releases/zipc-${version}.tbz";
-    hash = "sha256-vU4AGW1MjQ31xjwvyRKSn1AwS0X6gjLvaJGYKqzFRpk=";
+    hash = "sha256-YQqkCURwrJgFH0+zgfket25zJQ4w+Tcc1mTSrDuWRt0=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/php-packages/php-cs-fixer/default.nix b/pkgs/development/php-packages/php-cs-fixer/default.nix
index dadc4dfafa19..611e5f263091 100644
--- a/pkgs/development/php-packages/php-cs-fixer/default.nix
+++ b/pkgs/development/php-packages/php-cs-fixer/default.nix
@@ -2,14 +2,14 @@
 
 let
   pname = "php-cs-fixer";
-  version = "3.48.0";
+  version = "3.49.0";
 in
 mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v${version}/php-cs-fixer.phar";
-    sha256 = "sha256-JPFZ297l83PqJv+yyzTN6DIKsk82MJuo9IEdMPPAPGM=";
+    sha256 = "sha256-cnH6SEEaEh7X9zlHgHD8eOpaSUDnqhL2SMnNGSj1nJQ=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/python-modules/acquire/default.nix b/pkgs/development/python-modules/acquire/default.nix
index aabd6216c904..c2c4e125e328 100644
--- a/pkgs/development/python-modules/acquire/default.nix
+++ b/pkgs/development/python-modules/acquire/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "acquire";
-  version = "3.11";
+  version = "3.12";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "acquire";
     rev = "refs/tags/${version}";
-    hash = "sha256-0aLPDh9lrKpHo97VFFwCmPXyXXNFGgkdjoppzm3BCTo=";
+    hash = "sha256-anRNCnLDKHAEfOWi6m1n4R9lvFTlZgw5xxh39exvzH0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/adafruit-platformdetect/default.nix b/pkgs/development/python-modules/adafruit-platformdetect/default.nix
index 1cf12fb3b460..baecca21fd5e 100644
--- a/pkgs/development/python-modules/adafruit-platformdetect/default.nix
+++ b/pkgs/development/python-modules/adafruit-platformdetect/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "adafruit-platformdetect";
-  version = "3.59.0";
+  version = "3.60.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "Adafruit-PlatformDetect";
     inherit version;
-    hash = "sha256-zzPoLRZPFG8O45Bih54Mq6VeAYJU25czWFZtl849RgI=";
+    hash = "sha256-ZE3rETwAuhv7pHA/zYDKtStWONShFG8tWDeN9K8JdG8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/adjusttext/default.nix b/pkgs/development/python-modules/adjusttext/default.nix
index d8d82edb8a31..a97353baa987 100644
--- a/pkgs/development/python-modules/adjusttext/default.nix
+++ b/pkgs/development/python-modules/adjusttext/default.nix
@@ -4,27 +4,34 @@
 , matplotlib
 , numpy
 , packaging
+, pythonOlder
+, scipy
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "adjusttext";
-  version = "0.8.1";
-  format = "setuptools";
+  version = "1.0.4";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "Phlya";
-    repo = pname;
-    rev = "refs/tags/${version}";
+    repo = "adjusttext";
+    rev = "refs/tags/v${version}";
     hash = "sha256-Lhl6ykx5ynf+pBub5tBUaALm1w/88jbuSXPigE216NY=";
   };
 
   nativeBuildInputs = [
     packaging
+    setuptools
   ];
 
   propagatedBuildInputs = [
     matplotlib
     numpy
+    scipy
   ];
 
   # Project has no tests
@@ -37,6 +44,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Iteratively adjust text position in matplotlib plots to minimize overlaps";
     homepage = "https://github.com/Phlya/adjustText";
+    changelog = "https://github.com/Phlya/adjustText/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ samuela ];
   };
diff --git a/pkgs/development/python-modules/aio-geojson-geonetnz-quakes/default.nix b/pkgs/development/python-modules/aio-geojson-geonetnz-quakes/default.nix
index f8daf10c3c1f..65973321f95b 100644
--- a/pkgs/development/python-modules/aio-geojson-geonetnz-quakes/default.nix
+++ b/pkgs/development/python-modules/aio-geojson-geonetnz-quakes/default.nix
@@ -1,29 +1,34 @@
 { lib
 , aio-geojson-client
 , aiohttp
-, aresponses
+, aioresponses
 , buildPythonPackage
 , fetchFromGitHub
 , pytest-asyncio
 , pytestCheckHook
 , pytz
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "aio-geojson-geonetnz-quakes";
-  version = "0.15";
-  format = "setuptools";
+  version = "0.16";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "exxamalte";
     repo = "python-aio-geojson-geonetnz-quakes";
     rev = "refs/tags/v${version}";
-    hash = "sha256-/EPPEGLtiZBorZMnVg0NqwnHCbCXyZzz4449MzAYQx8=";
+    hash = "sha256-8OpmA3yHjUY+N5Obri4RWeuJiW916xGSWUYUgdpmjkw=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     aio-geojson-client
     aiohttp
@@ -33,7 +38,7 @@ buildPythonPackage rec {
   __darwinAllowLocalNetworking = true;
 
   nativeCheckInputs = [
-    aresponses
+    aioresponses
     pytest-asyncio
     pytestCheckHook
   ];
diff --git a/pkgs/development/python-modules/aio-geojson-usgs-earthquakes/default.nix b/pkgs/development/python-modules/aio-geojson-usgs-earthquakes/default.nix
index 89a1fd75b8f2..339481624a35 100644
--- a/pkgs/development/python-modules/aio-geojson-usgs-earthquakes/default.nix
+++ b/pkgs/development/python-modules/aio-geojson-usgs-earthquakes/default.nix
@@ -1,29 +1,34 @@
 { lib
 , aio-geojson-client
 , aiohttp
-, aresponses
+, aioresponses
 , buildPythonPackage
 , fetchFromGitHub
 , pytest-asyncio
 , pytestCheckHook
 , pytz
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "aio-geojson-usgs-earthquakes";
-  version = "0.2";
-  format = "setuptools";
+  version = "0.3";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "exxamalte";
     repo = "python-aio-geojson-usgs-earthquakes";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ET8wcOep4tSZJXyL+XvfW2j9eKp6LrBk/g18ZlgLIzc=";
+    hash = "sha256-Q9vBy5R5N5ihJdSMALo88qVYcFVs2/33lYRPdLej4S8=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     aio-geojson-client
     aiohttp
@@ -37,7 +42,7 @@ buildPythonPackage rec {
   ];
 
   checkInputs = [
-    aresponses
+    aioresponses
     pytest-asyncio
   ];
 
diff --git a/pkgs/development/python-modules/aioelectricitymaps/default.nix b/pkgs/development/python-modules/aioelectricitymaps/default.nix
index 1c13880ec497..5e01d34795a7 100644
--- a/pkgs/development/python-modules/aioelectricitymaps/default.nix
+++ b/pkgs/development/python-modules/aioelectricitymaps/default.nix
@@ -2,8 +2,9 @@
 , aiohttp
 , aresponses
 , buildPythonPackage
-, dataclasses-json
 , fetchFromGitHub
+, mashumaro
+, orjson
 , poetry-core
 , pytest-asyncio
 , pytestCheckHook
@@ -13,25 +14,31 @@
 
 buildPythonPackage rec {
   pname = "aioelectricitymaps";
-  version = "0.1.6";
+  version = "0.2.0";
   pyproject = true;
 
-  disabled = pythonOlder "3.10";
+  disabled = pythonOlder "3.11";
 
   src = fetchFromGitHub {
     owner = "jpbede";
     repo = "aioelectricitymaps";
     rev = "refs/tags/v${version}";
-    hash = "sha256-SyI+2hxKOiSdx5e+vkHLsIk5xj4gNvmfZTYZ10oJhfc=";
+    hash = "sha256-cwRmUHVIviQquZtcQRtCFxBZTt4QEyaCixbY1ExUL9A=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-warn "--cov" ""
+  '';
+
   nativeBuildInputs = [
     poetry-core
   ];
 
   propagatedBuildInputs = [
     aiohttp
-    dataclasses-json
+    mashumaro
+    orjson
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/aioftp/default.nix b/pkgs/development/python-modules/aioftp/default.nix
index cc5a254e7b92..6aa37699ca4a 100644
--- a/pkgs/development/python-modules/aioftp/default.nix
+++ b/pkgs/development/python-modules/aioftp/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "aioftp";
-  version = "0.22.2";
+  version = "0.22.3";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-YcHNpxpldxW0GZRCt9t0XcW+rgWGW43w3QFMBSQK3LA=";
+    hash = "sha256-uqKxMYaqAWIuS4LyfC9I9Nr7SORXprGPzamakl4NwnA=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/aioopenexchangerates/default.nix b/pkgs/development/python-modules/aioopenexchangerates/default.nix
index 744a940957b6..6f18127ed167 100644
--- a/pkgs/development/python-modules/aioopenexchangerates/default.nix
+++ b/pkgs/development/python-modules/aioopenexchangerates/default.nix
@@ -1,7 +1,7 @@
 { lib
 , aiohttp
 , aioresponses
-, pydantic
+, pydantic_1
 , buildPythonPackage
 , fetchFromGitHub
 , poetry-core
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "aioopenexchangerates";
-  version = "0.4.6";
+  version = "0.4.8";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -21,12 +21,11 @@ buildPythonPackage rec {
     owner = "MartinHjelmare";
     repo = "aioopenexchangerates";
     rev = "refs/tags/v${version}";
-    hash = "sha256-6lgjblCyc4NSnw+nlCH0SKV7f9aa4qcfa7v9pgzusKo=";
+    hash = "sha256-qwqhbHp4JPsbA6g7SI2frtqhayCmA1s3pTW2S4r6gmw=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace 'pydantic = "^1.9"' 'pydantic = "*"' \
       --replace " --cov=aioopenexchangerates --cov-report=term-missing:skip-covered" ""
   '';
 
@@ -36,7 +35,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     aiohttp
-    pydantic
+    pydantic_1
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/aioquic/default.nix b/pkgs/development/python-modules/aioquic/default.nix
index fc0fe63de4e5..0d9801df1f82 100644
--- a/pkgs/development/python-modules/aioquic/default.nix
+++ b/pkgs/development/python-modules/aioquic/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , certifi
+, cryptography
 , fetchPypi
 , openssl
 , pylsqpack
@@ -13,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "aioquic";
-  version = "0.9.23";
+  version = "0.9.25";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-UsnaYO0IN/6LimoNfc8N++vsjpoCfhDr9yBPBWnFj6g=";
+    hash = "sha256-cHlceJBTJthVwq5SQHIjSq5YbHibgSkuJy0CHpsEMKM=";
   };
 
   nativeBuildInputs = [
@@ -29,6 +30,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     certifi
+    cryptography
     pylsqpack
     pyopenssl
     service-identity
diff --git a/pkgs/development/python-modules/aiortm/default.nix b/pkgs/development/python-modules/aiortm/default.nix
index dbbaea2d3903..e1e4f7fabaf7 100644
--- a/pkgs/development/python-modules/aiortm/default.nix
+++ b/pkgs/development/python-modules/aiortm/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "aiortm";
-  version = "0.8.7";
+  version = "0.8.10";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -24,12 +24,12 @@ buildPythonPackage rec {
     owner = "MartinHjelmare";
     repo = "aiortm";
     rev = "refs/tags/v${version}";
-    hash = "sha256-rWULiyQGBA01hWfRDulDuHX0c1LPo6CTZ9HFOn3MD+E=";
+    hash = "sha256-WkVuuvWWdj2McdXl+XwYukUcloehelFIi6QL5LSkfLk=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace " --cov=aiortm --cov-report=term-missing:skip-covered" ""
+      --replace-warn " --cov=aiortm --cov-report=term-missing:skip-covered" ""
   '';
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/airthings-ble/default.nix b/pkgs/development/python-modules/airthings-ble/default.nix
index d5b1b5e2c1d2..aa418733a6cc 100644
--- a/pkgs/development/python-modules/airthings-ble/default.nix
+++ b/pkgs/development/python-modules/airthings-ble/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "airthings-ble";
-  version = "0.6.0";
+  version = "0.6.1";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "vincegio";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-T+KtB6kPrLahI73W/Bb3A9ws91v4n1EtURgm3RcLzW8=";
+    hash = "sha256-A7Nrg0O+WVoHP+m8pz6idnNcxulwPYmMt9DfhKTHG24=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/alive-progress/default.nix b/pkgs/development/python-modules/alive-progress/default.nix
index b10b056f292a..58ccedd26d6c 100644
--- a/pkgs/development/python-modules/alive-progress/default.nix
+++ b/pkgs/development/python-modules/alive-progress/default.nix
@@ -5,20 +5,28 @@
 , fetchFromGitHub
 , grapheme
 , pytestCheckHook
+, pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "alive-progress";
-  version = "3.1.4";
-  format = "setuptools";
+  version = "3.1.5";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "rsalmei";
-    repo = pname;
-    rev = "v${version}";
-    hash = "sha256-27PgxQ9nw8p5hfaSf/jPYG7419o3i8B8R09o93szSOk=";
+    repo = "alive-progress";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-yJhl0QrMHET9ISDc/D5AEQ7dTJkmcV2SWqy/xmG18uY=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     about-time
     grapheme
@@ -36,6 +44,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations";
     homepage = "https://github.com/rsalmei/alive-progress";
+    changelog = "https://github.com/rsalmei/alive-progress/blob/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ thiagokokada ];
   };
diff --git a/pkgs/development/python-modules/aliyun-python-sdk-iot/default.nix b/pkgs/development/python-modules/aliyun-python-sdk-iot/default.nix
index afad8539e7cc..2f08429d54d7 100644
--- a/pkgs/development/python-modules/aliyun-python-sdk-iot/default.nix
+++ b/pkgs/development/python-modules/aliyun-python-sdk-iot/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "aliyun-python-sdk-iot";
-  version = "8.58.0";
+  version = "8.59.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Aafqju0EcaXv9RYkNSlcc1JnffluXXSl3KR1OcIX+OI=";
+    hash = "sha256-v0jTMKtYrbEBVjHQokpWSlcJBALZFsuoYHq8wCP8w1E=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/ansible/default.nix b/pkgs/development/python-modules/ansible/default.nix
index 42f4d0032cfd..957c36b8525e 100644
--- a/pkgs/development/python-modules/ansible/default.nix
+++ b/pkgs/development/python-modules/ansible/default.nix
@@ -21,7 +21,7 @@
 
 let
   pname = "ansible";
-  version = "9.0.1";
+  version = "9.1.0";
 in
 buildPythonPackage {
   inherit pname version;
@@ -31,7 +31,7 @@ buildPythonPackage {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-zAbCUfFCg3z1QLeXdyRZapTz0P6dqWGRdeneZTnNBwU=";
+    hash = "sha256-WtlJkfsODlOncKn/zxtoBH9hsigtlIp9JoLs2PuPob8=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/anthropic/default.nix b/pkgs/development/python-modules/anthropic/default.nix
index fdf38b174683..5dcd191aacdc 100644
--- a/pkgs/development/python-modules/anthropic/default.nix
+++ b/pkgs/development/python-modules/anthropic/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "anthropic";
-  version = "0.11.0";
+  version = "0.14.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "anthropics";
     repo = "anthropic-sdk-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-1g3Bbij9HbMK+JJASe+VTBXx5jCQheXLrcnAD0qMs8g=";
+    hash = "sha256-LnY9YoDOVIRqSRQQ/3ggUvlOf0p1351HOjqzRZSLsME=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/anywidget/default.nix b/pkgs/development/python-modules/anywidget/default.nix
index ffa3666555c5..4d449bbe0303 100644
--- a/pkgs/development/python-modules/anywidget/default.nix
+++ b/pkgs/development/python-modules/anywidget/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "anywidget";
-  version = "0.8.1";
+  version = "0.9.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-p2J3cL5FX4mv19WPr/km9F71K1MleuPFlRd9X/mxL9E=";
+    hash = "sha256-fV8yMQ6WGZyyf5c41B0MSwHusVx090SzukqX/WqbqG0=";
   };
 
   # We do not need the jupyterlab build dependency, because we do not need to
diff --git a/pkgs/development/python-modules/aocd-example-parser/default.nix b/pkgs/development/python-modules/aocd-example-parser/default.nix
new file mode 100644
index 000000000000..c2379aa914e1
--- /dev/null
+++ b/pkgs/development/python-modules/aocd-example-parser/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, flit-core
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "aocd-example-parser";
+  version = "unstable-2023-12-17";
+  pyproject = true;
+
+  disabled = pythonOlder "3.9";
+
+  src = fetchFromGitHub {
+    owner = "wimglenn";
+    repo = "aocd-example-parser";
+    rev = "07330183f3e43401444fe17b08d72eb6168504e1";
+    hash = "sha256-iOxqzZj29aY/xyigir1KOU6GcBBvnlxEOBLHChEQjf4=";
+  };
+
+  nativeBuildInputs = [
+    flit-core
+  ];
+
+  # Circular dependency with aocd
+  # pythonImportsCheck = [
+  #   "aocd_example_parser"
+  # ];
+
+  meta = with lib; {
+    description = "Default implementation of an example parser plugin for advent-of-code-data";
+    homepage = "https://github.com/wimglenn/aocd-example-parser";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/aocd/default.nix b/pkgs/development/python-modules/aocd/default.nix
index f1a31ee243b8..1b56736028b8 100644
--- a/pkgs/development/python-modules/aocd/default.nix
+++ b/pkgs/development/python-modules/aocd/default.nix
@@ -1,32 +1,33 @@
 { lib
 , stdenv
+, aocd-example-parser
+, beautifulsoup4
 , buildPythonPackage
 , fetchFromGitHub
-, requests
-, pytestCheckHook
-, tzlocal
-, pytest-mock
+, numpy
+, pebble
+, pook
 , pytest-freezegun
+, pytest-mock
 , pytest-raisin
 , pytest-socket
+, pytestCheckHook
+, python-dateutil
+, pythonOlder
+, requests
 , requests-mock
-, pook
-, numpy
 , rich
-, pebble
-, python-dateutil
-, termcolor
-, beautifulsoup4
 , setuptools
-, pythonOlder
+, termcolor
+, tzlocal
 }:
 
 buildPythonPackage rec {
   pname = "aocd";
   version = "2.0.1";
-  format = "pyproject";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "wimglenn";
@@ -35,15 +36,30 @@ buildPythonPackage rec {
     hash = "sha256-YZvcR97uHceloqwoP+azaBmj3GLusYNbItLIaeJ3QD0=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
+    aocd-example-parser
+    beautifulsoup4
+    pebble
     python-dateutil
     requests
+    rich # for example parser aoce. must either be here or checkInputs
     termcolor
-    beautifulsoup4
-    pebble
     tzlocal
-    setuptools
-    rich # for example parser aoce. must either be here or checkInputs
+  ];
+
+  nativeCheckInputs = [
+    numpy
+    pook
+    pytest-freezegun
+    pytest-mock
+    pytest-raisin
+    pytest-socket
+    pytestCheckHook
+    requests-mock
   ];
 
   # Too many failing tests
@@ -85,20 +101,6 @@ buildPythonPackage rec {
     "test_submit_float_warns"
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-    pytest-mock
-    pytest-freezegun
-    pytest-raisin
-    pytest-socket
-  ];
-
-  checkInputs = [
-    pook
-    numpy
-    requests-mock
-  ];
-
   pythonImportsCheck = [
     "aocd"
   ];
diff --git a/pkgs/development/python-modules/apache-beam/default.nix b/pkgs/development/python-modules/apache-beam/default.nix
index bd53a6f0b48a..2e267e2ef191 100644
--- a/pkgs/development/python-modules/apache-beam/default.nix
+++ b/pkgs/development/python-modules/apache-beam/default.nix
@@ -150,7 +150,7 @@ buildPythonPackage rec {
 
   # Make sure we're running the tests for the actually installed
   # package, so that cython's .so files are available.
-  preCheck = "cd $out/lib/${python.libPrefix}/site-packages";
+  preCheck = "cd $out/${python.sitePackages}";
 
   disabledTestPaths = [
     # Fails with
diff --git a/pkgs/development/python-modules/apprise/default.nix b/pkgs/development/python-modules/apprise/default.nix
index d70a70d43eae..9d3f55bec283 100644
--- a/pkgs/development/python-modules/apprise/default.nix
+++ b/pkgs/development/python-modules/apprise/default.nix
@@ -19,14 +19,14 @@
 
 buildPythonPackage rec {
   pname = "apprise";
-  version = "1.7.1";
+  version = "1.7.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-jUOdCFUEcFJEJd7e5LyKcnZsIWwhjzdyw3QE6y/Yblo=";
+    hash = "sha256-CeFZspAI5sjpPX/8PBXUGcC7rkFiBAX48tNDK3Ki6b8=";
   };
 
   nativeBuildInputs = [
@@ -75,5 +75,6 @@ buildPythonPackage rec {
     changelog = "https://github.com/caronc/apprise/releases/tag/v${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ marsam ];
+    mainProgram = "apprise";
   };
 }
diff --git a/pkgs/development/python-modules/approvaltests/default.nix b/pkgs/development/python-modules/approvaltests/default.nix
index 49e61e87731c..53ad86c4ea37 100644
--- a/pkgs/development/python-modules/approvaltests/default.nix
+++ b/pkgs/development/python-modules/approvaltests/default.nix
@@ -19,16 +19,16 @@
 
 buildPythonPackage rec {
   pname = "approvaltests";
-  version = "10.2.0";
+  version = "10.3.0";
   pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "approvals";
     repo = "ApprovalTests.Python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-2NaqqgrHXJovoVExvbr0s86eRbcxy+DUrsdRH/vak3E=";
+    hash = "sha256-1f0iTwLREF20Khkd4/xEfxXINJIpc4LfszsvCblS/yM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/appthreat-vulnerability-db/default.nix b/pkgs/development/python-modules/appthreat-vulnerability-db/default.nix
index a56d63aa3b1e..5101f0fcc0d0 100644
--- a/pkgs/development/python-modules/appthreat-vulnerability-db/default.nix
+++ b/pkgs/development/python-modules/appthreat-vulnerability-db/default.nix
@@ -17,21 +17,21 @@
 
 buildPythonPackage rec {
   pname = "appthreat-vulnerability-db";
-  version = "5.5.10";
+  version = "5.6.1";
   pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "AppThreat";
     repo = "vulnerability-db";
     rev = "refs/tags/v${version}";
-    hash = "sha256-yBB66H8l+kjVcpmt3gYzggRgfxjFvMPwy3rcYuKYqks=";
+    hash = "sha256-BkJ1hA4SXuXYkJnSNaZ/JeX+PHdJylfwKkRzQsBxc24=";
   };
 
   postPatch = ''
-    substituteInPlace pytest.ini \
-      --replace " --cov-append --cov-report term --cov vdb" ""
+    substituteInPlace pyproject.toml \
+      --replace-warn " --cov-report=term-missing --no-cov-on-fail --cov vdb" ""
   '';
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/asyncsleepiq/default.nix b/pkgs/development/python-modules/asyncsleepiq/default.nix
index 08931c695803..25969661bf15 100644
--- a/pkgs/development/python-modules/asyncsleepiq/default.nix
+++ b/pkgs/development/python-modules/asyncsleepiq/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "asyncsleepiq";
-  version = "1.5.2";
+  version = "1.5.3";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-QwVUYYC25Lx3nfQ8PKCO2mFMT9ol6mvwojVVATwW4kI=";
+    hash = "sha256-TDHFKLifNmmAVvD5DjSopEXFbR+KPMIdSA+rLAKrfpI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/autofaiss/default.nix b/pkgs/development/python-modules/autofaiss/default.nix
index 9f1bf2a6d818..0f6ab7dda159 100644
--- a/pkgs/development/python-modules/autofaiss/default.nix
+++ b/pkgs/development/python-modules/autofaiss/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "autofaiss";
-  version = "2.16.0";
+  version = "2.17.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "criteo";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-NpehDx67VyIkcqno2DB2NmUKKZhK1Owwd9BNh3nqOLY=";
+    hash = "sha256-pey3wrW7CDLMiPPKnmYrcSJqGuy6ecA2SE9m3Jtt6DU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/autopep8/default.nix b/pkgs/development/python-modules/autopep8/default.nix
index 9a177d7b4936..4bfffd8a780b 100644
--- a/pkgs/development/python-modules/autopep8/default.nix
+++ b/pkgs/development/python-modules/autopep8/default.nix
@@ -40,6 +40,7 @@ buildPythonPackage rec {
     description = "A tool that automatically formats Python code to conform to the PEP 8 style guide";
     homepage = "https://github.com/hhatto/autopep8";
     license = licenses.mit;
+    mainProgram = "autopep8";
     maintainers = with maintainers; [ bjornfor ];
   };
 }
diff --git a/pkgs/development/python-modules/aws-adfs/default.nix b/pkgs/development/python-modules/aws-adfs/default.nix
index d583a97a41a0..2397b2462579 100644
--- a/pkgs/development/python-modules/aws-adfs/default.nix
+++ b/pkgs/development/python-modules/aws-adfs/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "aws-adfs";
-  version = "2.10.0";
+  version = "2.11.2";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "venth";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-CUWjD5b62pSvvMS5CFZix9GL4z0EhkGttxgfeOLKHqY=";
+    hash = "sha256-ZzQ92VBa8CApd0WkfPrUZsEZICK2fhwmt45P2sx2mK0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/awsipranges/default.nix b/pkgs/development/python-modules/awsipranges/default.nix
new file mode 100644
index 000000000000..036639c3cdb7
--- /dev/null
+++ b/pkgs/development/python-modules/awsipranges/default.nix
@@ -0,0 +1,51 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, poetry-core
+, pyopenssl
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "awsipranges";
+  version = "0.3.3";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "aws-samples";
+    repo = "awsipranges";
+    rev = "refs/tags/${version}";
+    hash = "sha256-ve1+0zkDDUGswtQoXhfESMcBzoNgUutxEhz43HXL4H8=";
+  };
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  nativeCheckInputs = [
+    pyopenssl
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "awsipranges"
+  ];
+
+  disabledTestPaths = [
+    # Tests require network access
+    "tests/data/test_syntax_and_semantics.py"
+    "tests/integration/test_package_apis.py"
+    "tests/unit/test_data_loading.py"
+  ];
+
+  meta = with lib; {
+    description = "Module to work with the AWS IP address ranges";
+    homepage = "https://github.com/aws-samples/awsipranges";
+    changelog = "https://github.com/aws-samples/awsipranges/releases/tag/${version}";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/awswrangler/default.nix b/pkgs/development/python-modules/awswrangler/default.nix
index d3eee65f576a..274b88a9811b 100644
--- a/pkgs/development/python-modules/awswrangler/default.nix
+++ b/pkgs/development/python-modules/awswrangler/default.nix
@@ -25,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "awswrangler";
-  version = "3.5.1";
+  version = "3.5.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -34,7 +34,7 @@ buildPythonPackage rec {
     owner = "aws";
     repo = "aws-sdk-pandas";
     rev = "refs/tags/${version}";
-    hash = "sha256-USHRs/NRCPACvVxsQyRF1yQsQefAXSTwdHJqQqKe6bQ=";
+    hash = "sha256-lIEitS/pyOq4RjyUqPzfKOcNtAIWp14sQcLfQ1FwEoE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-batch/default.nix b/pkgs/development/python-modules/azure-batch/default.nix
index 2ca6a6d743ca..041d79b5ebd0 100644
--- a/pkgs/development/python-modules/azure-batch/default.nix
+++ b/pkgs/development/python-modules/azure-batch/default.nix
@@ -1,29 +1,31 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, msrest
-, azure-common
 , msrestazure
+, azure-common
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "azure-batch";
-  version = "14.0.0";
-  format = "setuptools";
+  version = "14.1.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    extension = "zip";
-    hash = "sha256-FlsembhvghAkxProX7NIadQHqg67DKS5b7JthZwmyTQ=";
+    hash = "sha256-lhayyqYpx0ABItaF1VfrzQF5famImQgxj5pUdIQ5es0=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
-    msrest
-    msrestazure
     azure-common
+    msrestazure
   ];
 
   # Module has no tests
@@ -35,7 +37,8 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "This is the Microsoft Azure Batch Client Library";
-    homepage = "https://github.com/Azure/azure-sdk-for-python";
+    homepage = "https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/batch/azure-batch";
+    changelog = "https://github.com/Azure/azure-sdk-for-python/blob/azure-batch_${version}/sdk/batch/azure-batch/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ maxwilson ];
   };
diff --git a/pkgs/development/python-modules/azure-common/default.nix b/pkgs/development/python-modules/azure-common/default.nix
index ed4cd5243abf..2b4caa102f79 100644
--- a/pkgs/development/python-modules/azure-common/default.nix
+++ b/pkgs/development/python-modules/azure-common/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   ] ++ lib.optionals (!isPy3k) [ setuptools ]; # need for namespace lookup
 
   postInstall = lib.optionalString (!isPy3k) ''
-    echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
+    echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/${python.sitePackages}"/azure/__init__.py
   '';
 
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-common/default.nix b/pkgs/development/python-modules/azure-mgmt-common/default.nix
index 7ce7ce2c3f00..5f0390708c7d 100644
--- a/pkgs/development/python-modules/azure-mgmt-common/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-common/default.nix
@@ -28,8 +28,8 @@ buildPythonPackage rec {
   ];
 
   postInstall = pkgs.lib.optionalString (!isPy3k) ''
-    echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
-    echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
+    echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/${python.sitePackages}"/azure/mgmt/__init__.py
+    echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/${python.sitePackages}"/azure/__init__.py
   '';
 
   doCheck = false;
diff --git a/pkgs/development/python-modules/backports-zoneinfo/default.nix b/pkgs/development/python-modules/backports-zoneinfo/default.nix
index ed0915eee522..ff5196855d34 100644
--- a/pkgs/development/python-modules/backports-zoneinfo/default.nix
+++ b/pkgs/development/python-modules/backports-zoneinfo/default.nix
@@ -46,7 +46,7 @@ buildPythonPackage rec {
     (substituteAll {
       name = "zoneinfo-path";
       src = ./zoneinfo.patch;
-      zoneinfo = "${tzdata}/lib/${python.libPrefix}/site-packages/tzdata/zoneinfo";
+      zoneinfo = "${tzdata}/${python.sitePackages}/tzdata/zoneinfo";
     })
   ];
 
diff --git a/pkgs/development/python-modules/bip-utils/default.nix b/pkgs/development/python-modules/bip-utils/default.nix
index 505c19cf1943..5666f7c1353a 100644
--- a/pkgs/development/python-modules/bip-utils/default.nix
+++ b/pkgs/development/python-modules/bip-utils/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "bip-utils";
-  version = "2.9.0";
+  version = "2.9.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "ebellocchia";
     repo = "bip_utils";
     rev = "refs/tags/v${version}";
-    hash = "sha256-PUWKpAn6Z1E7uMk8+XFm6FDtupzj6eMSkyXR9vN1w3I=";
+    hash = "sha256-D+LalbrwsjxwYW8l38D1l4tGAsjrZ+bS+/Ppgaxkzy4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/blebox-uniapi/default.nix b/pkgs/development/python-modules/blebox-uniapi/default.nix
index f93ef838751f..7436f6309152 100644
--- a/pkgs/development/python-modules/blebox-uniapi/default.nix
+++ b/pkgs/development/python-modules/blebox-uniapi/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "blebox-uniapi";
-  version = "2.2.0";
+  version = "2.2.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "blebox";
     repo = "blebox_uniapi";
     rev = "refs/tags/v${version}";
-    hash = "sha256-cLSI6wa3gHE0QkSVVWMNpb5fyQy0TLDNSqOuGlDJGJc=";
+    hash = "sha256-aVYk/N8dH0jc9BLQ2nZXulMCUqwEWpSX/JTiAxdn2sM=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/boto3-stubs/default.nix b/pkgs/development/python-modules/boto3-stubs/default.nix
index 4557d96c053f..1adb7e70c59a 100644
--- a/pkgs/development/python-modules/boto3-stubs/default.nix
+++ b/pkgs/development/python-modules/boto3-stubs/default.nix
@@ -365,14 +365,14 @@
 
 buildPythonPackage rec {
   pname = "boto3-stubs";
-  version = "1.34.29";
+  version = "1.34.33";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-48aM0PAcF9UJCq/PHHuy17lK7k46nNRa+L+d2ILvZEw=";
+    hash = "sha256-WXuVCQ6rw+EI6AS24jVgYRwx0H6VGZzzVIzPdIIGK+Y=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/botocore-stubs/default.nix b/pkgs/development/python-modules/botocore-stubs/default.nix
index ab07d0cad3bb..dcf43729f40c 100644
--- a/pkgs/development/python-modules/botocore-stubs/default.nix
+++ b/pkgs/development/python-modules/botocore-stubs/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "botocore-stubs";
-  version = "1.34.29";
+  version = "1.34.33";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "botocore_stubs";
     inherit version;
-    hash = "sha256-PMjbcbfYrsjG0TvITOzsGNZMsUIxHhvQYNZzy1VtkTs=";
+    hash = "sha256-96v/qwfDvWcKxpz4nSbUCWHS6ZO8cdzsc1UBl8KRsjQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/branca/default.nix b/pkgs/development/python-modules/branca/default.nix
index 3bd46a26b83b..894ee421d208 100644
--- a/pkgs/development/python-modules/branca/default.nix
+++ b/pkgs/development/python-modules/branca/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "branca";
-  version = "0.7.0";
+  version = "0.7.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "python-visualization";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-DH+XBj+VcS56+nAOGjjrKG0dnSKrqiU6N5vkILm+vSE=";
+    hash = "sha256-OePOZvqXtsp73HsfFslI6F3kegbdk45lWY1CMQRTcoc=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/celery/default.nix b/pkgs/development/python-modules/celery/default.nix
index 7c22634f2a3c..fa7ebb248adb 100644
--- a/pkgs/development/python-modules/celery/default.nix
+++ b/pkgs/development/python-modules/celery/default.nix
@@ -18,6 +18,7 @@
 , pytest-click
 , pytest-subtests
 , pytest-timeout
+, pytest-xdist
 , pytestCheckHook
 , python-dateutil
 , pythonOlder
@@ -63,6 +64,7 @@ buildPythonPackage rec {
     pytest-click
     pytest-subtests
     pytest-timeout
+    pytest-xdist
     pytestCheckHook
   ];
 
@@ -77,6 +79,10 @@ buildPythonPackage rec {
   disabledTests = [
     "msgpack"
     "test_check_privileges_no_fchown"
+    # fails with pytest-xdist
+    "test_itercapture_limit"
+    "test_stamping_headers_in_options"
+    "test_stamping_with_replace"
   ] ++ lib.optionals stdenv.isDarwin [
     # too many open files on hydra
     "test_cleanup"
diff --git a/pkgs/development/python-modules/censys/default.nix b/pkgs/development/python-modules/censys/default.nix
index f4b1f97f8cfa..901f70dddd2e 100644
--- a/pkgs/development/python-modules/censys/default.nix
+++ b/pkgs/development/python-modules/censys/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "censys";
-  version = "2.2.10";
+  version = "2.2.11";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "censys";
     repo = "censys-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-rjLTEaHSBB6igffNGt4qJZeSyIn1Cc1ZGEGfEoMj7OQ=";
+    hash = "sha256-/aB8rsyymNTXJLsf/IkA6o7M/mzyao10cl7kbxHEzGc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/clarifai-grpc/default.nix b/pkgs/development/python-modules/clarifai-grpc/default.nix
index 511605a8ad99..ea3bf5c530d3 100644
--- a/pkgs/development/python-modules/clarifai-grpc/default.nix
+++ b/pkgs/development/python-modules/clarifai-grpc/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "clarifai-grpc";
-  version = "10.0.4";
+  version = "10.0.10";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "Clarifai";
     repo = "clarifai-python-grpc";
     rev = "refs/tags/${version}";
-    hash = "sha256-jhM+UfyaliVmUH6e3ArZvZokB8lDKS/fx8376cZwlQM=";
+    hash = "sha256-IcMnzfkq4eSXh2KsxSog64RQbJhXkEWjma6LNkzDX0Y=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/clickhouse-connect/default.nix b/pkgs/development/python-modules/clickhouse-connect/default.nix
index 9f6e4519c262..b44188ffcc71 100644
--- a/pkgs/development/python-modules/clickhouse-connect/default.nix
+++ b/pkgs/development/python-modules/clickhouse-connect/default.nix
@@ -23,7 +23,7 @@
 }:
 buildPythonPackage rec {
   pname = "clickhouse-connect";
-  version = "0.6.23";
+  version = "0.7.0";
 
   format = "setuptools";
 
@@ -33,7 +33,7 @@ buildPythonPackage rec {
     repo = "clickhouse-connect";
     owner = "ClickHouse";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Gaiq5t/u5LJeJR5nNNfBvdNaFEycqgxVCHFETIvsUUU=";
+    hash = "sha256-RpuBKdjjSjJJ9UU7VW20gD9Rouj0oxv72sZZaUa/BfY=";
   };
 
   nativeBuildInputs = [ cython_3 ];
diff --git a/pkgs/development/python-modules/cryptodatahub/default.nix b/pkgs/development/python-modules/cryptodatahub/default.nix
index 734569297796..e19a4137e4f3 100644
--- a/pkgs/development/python-modules/cryptodatahub/default.nix
+++ b/pkgs/development/python-modules/cryptodatahub/default.nix
@@ -1,36 +1,38 @@
 { lib
-, buildPythonPackage
-, fetchFromGitLab
-
-# build-system
-, setuptools
-
-# dependencies
 , asn1crypto
 , attrs
+, beautifulsoup4
+, buildPythonPackage
+, fetchFromGitLab
 , pathlib2
+, pyfakefs
 , python-dateutil
+, pythonOlder
+, setuptools
 , six
-, urllib3
-
-# tests
-, beautifulsoup4
-, pyfakefs
 , unittestCheckHook
+, urllib3
 }:
 
 buildPythonPackage rec {
   pname = "cryptodatahub";
-  version = "0.10.1";
-  format = "pyproject";
+  version = "0.12.2";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitLab {
     owner = "coroner";
     repo = "cryptodatahub";
-    rev = "v${version}";
-    hash = "sha256-eLdK5gFrLnbIBB1NTeQzpdCLPdATVjzPn5LhhUsDuwo=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-zVHHBQYcl26zTtXPAs/AgKOojKQORu08rpkfY0l1zjM=";
   };
 
+  postPatch = ''
+    substituteInPlace requirements.txt  \
+      --replace-warn "attrs>=20.3.0,<22.0.1" "attrs>=20.3.0"
+  '';
+
   nativeBuildInputs = [
     setuptools
   ];
@@ -44,23 +46,28 @@ buildPythonPackage rec {
     urllib3
   ];
 
-  pythonImportsCheck = [ "cryptodatahub" ];
-
   nativeCheckInputs = [
     beautifulsoup4
     pyfakefs
     unittestCheckHook
   ];
 
+  pythonImportsCheck = [
+    "cryptodatahub"
+  ];
+
+
   preCheck = ''
     # failing tests
     rm test/updaters/test_common.py
+    # Tests require network access
+    rm test/common/test_utils.py
   '';
 
   meta = with lib; {
     description = "Repository of cryptography-related data";
     homepage = "https://gitlab.com/coroner/cryptodatahub";
-    changelog = "https://gitlab.com/coroner/cryptodatahub/-/blob/${src.rev}/CHANGELOG.rst";
+    changelog = "https://gitlab.com/coroner/cryptodatahub/-/blob/${version}/CHANGELOG.rst";
     license = licenses.mpl20;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/development/python-modules/cryptolyzer/default.nix b/pkgs/development/python-modules/cryptolyzer/default.nix
index 27c5150f3715..61d5a4a3f664 100644
--- a/pkgs/development/python-modules/cryptolyzer/default.nix
+++ b/pkgs/development/python-modules/cryptolyzer/default.nix
@@ -1,35 +1,56 @@
 { lib
 , attrs
+, beautifulsoup4
 , buildPythonPackage
 , certvalidator
+, colorama
 , cryptoparser
+, dnspython
 , fetchPypi
+, pathlib2
+, pyfakefs
+, python-dateutil
 , pythonOlder
 , requests
-, six
+, setuptools
 , urllib3
 }:
 
 buildPythonPackage rec {
   pname = "cryptolyzer";
-  version = "0.12.1";
-  format = "setuptools";
+  version = "0.12.2";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     pname = "CryptoLyzer";
     inherit version;
-    hash = "sha256-1Ec57A5lCjy9FsA3vDmCyfOeHZaQz01FNiKyNV3eJfc=";
+    hash = "sha256-UffFdQ+MiB8kPzqnmWdnGRwAAM9wJwpUDK2bPvPvH0c=";
   };
 
+  postPatch = ''
+    substituteInPlace requirements.txt  \
+      --replace-warn "attrs>=20.3.0,<22.0.1" "attrs>=20.3.0" \
+      --replace-warn "bs4" "beautifulsoup4"
+  '';
+
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
-    certvalidator
     attrs
-    six
-    urllib3
+    beautifulsoup4
+    certvalidator
+    colorama
     cryptoparser
+    dnspython
+    pathlib2
+    pyfakefs
+    python-dateutil
     requests
+    urllib3
   ];
 
   # Tests require networking
diff --git a/pkgs/development/python-modules/cryptoparser/default.nix b/pkgs/development/python-modules/cryptoparser/default.nix
index a04c424e61e3..e377b35ee5be 100644
--- a/pkgs/development/python-modules/cryptoparser/default.nix
+++ b/pkgs/development/python-modules/cryptoparser/default.nix
@@ -12,15 +12,20 @@
 
 buildPythonPackage rec {
   pname = "cryptoparser";
-  version = "0.12.1";
-  format = "pyproject";
+  version = "0.12.2";
+  pyproject = true;
 
   src = fetchPypi {
     pname = "CryptoParser";
     inherit version;
-    hash = "sha256-Q05koDfVaVgiQYhULkwzl9uzUIumO8ZIGJPfxRBUsj0=";
+    hash = "sha256-SG7I/uOWZapjZ5zGW1HndGqaYc2k2aRWf3IWlartIJE=";
   };
 
+  postPatch = ''
+    substituteInPlace requirements.txt  \
+      --replace-warn "attrs>=20.3.0,<22.0.1" "attrs>=20.3.0"
+  '';
+
   nativeBuildInputs = [
     setuptools
   ];
diff --git a/pkgs/development/python-modules/cyclonedx-python-lib/default.nix b/pkgs/development/python-modules/cyclonedx-python-lib/default.nix
index 26fed6a0b493..6d5aa4032c2d 100644
--- a/pkgs/development/python-modules/cyclonedx-python-lib/default.nix
+++ b/pkgs/development/python-modules/cyclonedx-python-lib/default.nix
@@ -23,7 +23,7 @@
 
 buildPythonPackage rec {
   pname = "cyclonedx-python-lib";
-  version = "6.4.0";
+  version = "6.4.1";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -32,7 +32,7 @@ buildPythonPackage rec {
     owner = "CycloneDX";
     repo = "cyclonedx-python-lib";
     rev = "refs/tags/v${version}";
-    hash = "sha256-WPXhla5VGyexZPxq9R86G9CNWuGyn79H+lPDCmWitN0=";
+    hash = "sha256-IhiH1Vk/Wf6cTxijxE1erkQozY+vOVd5pu6tAVUoDJM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/daiquiri/default.nix b/pkgs/development/python-modules/daiquiri/default.nix
index c7d6602de5fe..c3e5436de969 100644
--- a/pkgs/development/python-modules/daiquiri/default.nix
+++ b/pkgs/development/python-modules/daiquiri/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "daiquiri";
-  version = "3.2.3";
+  version = "3.2.5.1";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-P8rvN2/WgIi5I5E3R6t+4S2Lf7Kvf4xfIOWYCZfp6DU=";
+    hash = "sha256-Xy6G1vyovDjR6a36YFGE32/eo3AuB8oC0Wqj0AQ7Luw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/deebot-client/default.nix b/pkgs/development/python-modules/deebot-client/default.nix
new file mode 100644
index 000000000000..7e394e8e27e4
--- /dev/null
+++ b/pkgs/development/python-modules/deebot-client/default.nix
@@ -0,0 +1,84 @@
+{ lib
+, aiohttp
+, aiomqtt
+, buildPythonPackage
+, cachetools
+, defusedxml
+, docker
+, fetchFromGitHub
+, numpy
+, pillow
+, pycountry
+, pytest-asyncio
+, pytestCheckHook
+, pythonOlder
+, setuptools
+, setuptools-scm
+, svg-py
+, testfixtures
+}:
+
+buildPythonPackage rec {
+  pname = "deebot-client";
+  version = "5.1.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.11";
+
+  src = fetchFromGitHub {
+    owner = "DeebotUniverse";
+    repo = "client.py";
+    rev = "refs/tags/${version}";
+    hash = "sha256-XKsS0Ty3n6rQW+f+4lLCc4i9DBqs3b6R5FEIr8L11UE=";
+  };
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    aiohttp
+    aiomqtt
+    cachetools
+    defusedxml
+    numpy
+    pillow
+    svg-py
+  ];
+
+  nativeCheckInputs = [
+    docker
+    pycountry
+    pytest-asyncio
+    pytestCheckHook
+    testfixtures
+  ];
+
+  pythonImportsCheck = [
+    "deebot_client"
+  ];
+
+  disabledTests = [
+    # Tests require running container
+    "test_last_message_received_at"
+    "test_client_bot_subscription"
+    "test_client_reconnect_manual"
+    "test_p2p_success"
+    "test_p2p_not_supported"
+    "test_p2p_data_type_not_supported"
+    "test_p2p_to_late"
+    "test_p2p_parse_error"
+    "test_mqtt_task_exceptions"
+    "test_mqtt_task_exceptions"
+    "test_client_reconnect_on_broker_error"
+  ];
+
+  meta = with lib; {
+    description = "Deebot client library";
+    homepage = "https://github.com/DeebotUniverse/client.py";
+    changelog = "https://github.com/DeebotUniverse/client.py/releases/tag/${version}";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-cstruct/default.nix b/pkgs/development/python-modules/dissect-cstruct/default.nix
index cecc7dffef3f..bcc86b1f7588 100644
--- a/pkgs/development/python-modules/dissect-cstruct/default.nix
+++ b/pkgs/development/python-modules/dissect-cstruct/default.nix
@@ -9,16 +9,16 @@
 
 buildPythonPackage rec {
   pname = "dissect-cstruct";
-  version = "3.10";
-  format = "pyproject";
+  version = "3.12";
+  pyproject = true;
 
-  disabled = pythonOlder "3.10";
+  disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.cstruct";
     rev = "refs/tags/${version}";
-    hash = "sha256-cdBojvFI0cN6mEZ98xLa3XldvIoR+Jv1c0/hvVkKVoQ=";
+    hash = "sha256-67s0Qr/YeQp/K9MZS+btKdp+9J6mIMCwiittIUB9p2w=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-esedb/default.nix b/pkgs/development/python-modules/dissect-esedb/default.nix
index 1253b9ebb9c8..b5ddf86dd548 100644
--- a/pkgs/development/python-modules/dissect-esedb/default.nix
+++ b/pkgs/development/python-modules/dissect-esedb/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-esedb";
-  version = "3.10";
+  version = "3.11";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.esedb";
     rev = "refs/tags/${version}";
-    hash = "sha256-RlXnUD+KiBmntM/f7jEzdZ0Tdb8vPGvW0e3XoANaPnk=";
+    hash = "sha256-ynrZqP3QXe+SXFB0Uz+tdH2jGj+hpHfarbEN2P1+r/8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-extfs/default.nix b/pkgs/development/python-modules/dissect-extfs/default.nix
index 86206ee27ac1..0659372ca5cf 100644
--- a/pkgs/development/python-modules/dissect-extfs/default.nix
+++ b/pkgs/development/python-modules/dissect-extfs/default.nix
@@ -11,16 +11,16 @@
 
 buildPythonPackage rec {
   pname = "dissect-extfs";
-  version = "3.7";
+  version = "3.8";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.extfs";
     rev = "refs/tags/${version}";
-    hash = "sha256-RsAWqtoarn/2sZU5dkQYt794dXGOr5fe68VgMNDBst4=";
+    hash = "sha256-yM9PTMI4/8oU2bvOCKdh5tT0gw9+6esV1auKSbupL0U=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-hypervisor/default.nix b/pkgs/development/python-modules/dissect-hypervisor/default.nix
index 975526db7158..d8ccf0e0d8fb 100644
--- a/pkgs/development/python-modules/dissect-hypervisor/default.nix
+++ b/pkgs/development/python-modules/dissect-hypervisor/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-hypervisor";
-  version = "3.10";
+  version = "3.11";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.hypervisor";
     rev = "refs/tags/${version}";
-    hash = "sha256-Ml5U7yc4iqqilL6Y9qF3VU+pa0AXnYVQjVas90TpG30=";
+    hash = "sha256-x7C2h9NZRlkJWAe0+PCmOhOpfHM2/4vc7oEGQqGEPq8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-ntfs/default.nix b/pkgs/development/python-modules/dissect-ntfs/default.nix
index 4d69844c9884..97ebe80f18b8 100644
--- a/pkgs/development/python-modules/dissect-ntfs/default.nix
+++ b/pkgs/development/python-modules/dissect-ntfs/default.nix
@@ -11,16 +11,16 @@
 
 buildPythonPackage rec {
   pname = "dissect-ntfs";
-  version = "3.7";
+  version = "3.8";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.ntfs";
     rev = "refs/tags/${version}";
-    hash = "sha256-bnFimn5ektIKiX73NZ+1Iz3Uoew138a0nFJgypffC4o=";
+    hash = "sha256-BmXYnN8B7r/gz+zEWWS7ClOv29QOiHrm7g2ZNZXlnGU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-target/default.nix b/pkgs/development/python-modules/dissect-target/default.nix
index 90f82426f1c6..786b29562874 100644
--- a/pkgs/development/python-modules/dissect-target/default.nix
+++ b/pkgs/development/python-modules/dissect-target/default.nix
@@ -39,7 +39,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-target";
-  version = "3.14";
+  version = "3.15";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -48,12 +48,12 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.target";
     rev = "refs/tags/${version}";
-    hash = "sha256-vp1upVwohMXFKxlHy5lWmigdq9MUk1UknSsPpCXt50s=";
+    hash = "sha256-1uWKlp0t1mVtt3lbjl4U1TMxE2YHN/GzGs8OuoVTRqc=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace "flow.record~=" "flow.record>="
+      --replace-warn "flow.record~=" "flow.record>="
   '';
 
   nativeBuildInputs = [
@@ -110,12 +110,13 @@ buildPythonPackage rec {
     # Test requires rdump
     "test_exec_target_command"
     # Issue with tar file
-    "test_tar_sensitive_drive_letter"
     "test_dpapi_decrypt_blob"
-    "test_notifications_appdb"
     "test_md"
-    "test_notifications_wpndatabase"
     "test_nested_md_lvm"
+    "test_notifications_appdb"
+    "test_notifications_wpndatabase"
+    "test_tar_anonymous_filesystems"
+    "test_tar_sensitive_drive_letter"
     # Tests compare dates and times
     "yum"
     # Filesystem access, windows defender tests
diff --git a/pkgs/development/python-modules/dissect-util/default.nix b/pkgs/development/python-modules/dissect-util/default.nix
index 495294db9c3f..894b5e35f4e0 100644
--- a/pkgs/development/python-modules/dissect-util/default.nix
+++ b/pkgs/development/python-modules/dissect-util/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-util";
-  version = "3.13";
+  version = "3.14";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.util";
     rev = "refs/tags/${version}";
-    hash = "sha256-GUDYr3lP0BV7zJaaUen78CplRA7jfn1zYes7kczNGEU=";
+    hash = "sha256-NzqQW6OFv+CtAxa5J2X/XGS9UCFfhMp4elvgcTrA1Wg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-volume/default.nix b/pkgs/development/python-modules/dissect-volume/default.nix
index 1a2ce1e27355..77f69a83730f 100644
--- a/pkgs/development/python-modules/dissect-volume/default.nix
+++ b/pkgs/development/python-modules/dissect-volume/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-volume";
-  version = "3.7";
+  version = "3.8";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.volume";
     rev = "refs/tags/${version}";
-    hash = "sha256-5ZO++l6BWA085U5IkghjCT46YhKc85SB7sNU2h4Fpec=";
+    hash = "sha256-hEfURO4ITpjSpfHMlYfzO1cG+tjvqBP5QLYzo2uz8yo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-xfs/default.nix b/pkgs/development/python-modules/dissect-xfs/default.nix
index 1f46b745edc3..af83a91ec22f 100644
--- a/pkgs/development/python-modules/dissect-xfs/default.nix
+++ b/pkgs/development/python-modules/dissect-xfs/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-xfs";
-  version = "3.6";
+  version = "3.7";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.xfs";
     rev = "refs/tags/${version}";
-    hash = "sha256-unrkmhLvjWWKHiqJWCEVEVcUjxWXMznjOytRbDwAxKw=";
+    hash = "sha256-bqpN4Ho5A9j8oLwErPErMVgkanIkdNTqcT3lkdQiw6M=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect/default.nix b/pkgs/development/python-modules/dissect/default.nix
index eac1ba89fa55..544deeace888 100644
--- a/pkgs/development/python-modules/dissect/default.nix
+++ b/pkgs/development/python-modules/dissect/default.nix
@@ -35,7 +35,7 @@
 
 buildPythonPackage rec {
   pname = "dissect";
-  version = "3.11";
+  version = "3.12";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -44,7 +44,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect";
     rev = "refs/tags/${version}";
-    hash = "sha256-6y+p+Ulc1Viu5s1AL/ecVtO4YRnmem/ZleY8xC4CJrU=";
+    hash = "sha256-hy5Yr/yR7CC7cp6pA1JP+GKazu+N4AwPqFKwb7zM+N8=";
   };
 
   pythonRelaxDeps = true;
diff --git a/pkgs/development/python-modules/distutils-cfg/default.nix b/pkgs/development/python-modules/distutils-cfg/default.nix
index cbf12c17582a..fb616c65d036 100644
--- a/pkgs/development/python-modules/distutils-cfg/default.nix
+++ b/pkgs/development/python-modules/distutils-cfg/default.nix
@@ -24,7 +24,7 @@ in stdenv.mkDerivation {
   dontUnpack = true;
 
   installPhase = ''
-    dest="$out/lib/${python.libPrefix}/site-packages/distutils"
+    dest="$out/${python.sitePackages}/distutils"
     mkdir -p $dest
     ln -s ${python}/lib/${python.libPrefix}/distutils/* $dest
     ln -s ${distutilsCfg} $dest/distutils.cfg
diff --git a/pkgs/development/python-modules/django-cleanup/default.nix b/pkgs/development/python-modules/django-cleanup/default.nix
index acc94865c02b..a465ffefc6a6 100644
--- a/pkgs/development/python-modules/django-cleanup/default.nix
+++ b/pkgs/development/python-modules/django-cleanup/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "django-cleanup";
-  version = "8.0.0";
+  version = "8.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-xzmgVUTh5I3ISIcchw2/FZX4Uz0kUjvGc2DkNWLtrw0=";
+    hash = "sha256-cN+QUHakTnoRGzEZgZmvYz3uCIduGZ5tzjbKjda4sQ8=";
   };
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/django-crispy-bootstrap5/default.nix b/pkgs/development/python-modules/django-crispy-bootstrap5/default.nix
new file mode 100644
index 000000000000..16609c82d34a
--- /dev/null
+++ b/pkgs/development/python-modules/django-crispy-bootstrap5/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, django
+, setuptools
+, pytestCheckHook
+, pytest-django
+, django-crispy-forms
+}:
+
+buildPythonPackage rec {
+  pname = "django-crispy-bootstrap5";
+  version = "2023.10";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "django-crispy-forms";
+    repo = "crispy-bootstrap5";
+    rev = "refs/tags/${version}";
+    hash = "sha256-AUMlLj3GmI+0vYw56Dw2+iF5s1l6GF+zV7PRD889ldg=";
+  };
+
+  propagatedBuildInputs = [
+    django
+    setuptools
+  ];
+
+  nativeCheckInputs = [
+    pytest-django
+    pytestCheckHook
+    django-crispy-forms
+  ];
+
+  pythonImportsCheck = [ "crispy_bootstrap5" ];
+
+  meta = with lib; {
+    description = "Bootstrap 5 template pack for django-crispy-forms";
+    homepage = "https://github.com/django-crispy-forms/crispy-bootstrap5";
+    license = licenses.mit;
+    maintainers = with maintainers; [ onny ];
+  };
+}
diff --git a/pkgs/development/python-modules/django-reversion/default.nix b/pkgs/development/python-modules/django-reversion/default.nix
index 7eaa9c3a7189..35d54194f07d 100644
--- a/pkgs/development/python-modules/django-reversion/default.nix
+++ b/pkgs/development/python-modules/django-reversion/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "django-reversion";
-  version = "5.0.10";
+  version = "5.0.12";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
 src = fetchPypi {
     inherit pname version;
-    hash = "sha256-wYdJpnwdtBZ8yszDY5XF/mB48xKGloPC89IUBR5aayk=";
+    hash = "sha256-wEfMmanxukqubbicOsJDR41t6Y7Ipgxwc/zIddicXNs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dploot/default.nix b/pkgs/development/python-modules/dploot/default.nix
new file mode 100644
index 000000000000..6b6dc6454cb6
--- /dev/null
+++ b/pkgs/development/python-modules/dploot/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, buildPythonPackage
+, poetry-core
+, pythonRelaxDepsHook
+, fetchPypi
+, impacket
+, cryptography
+, pyasn1
+, lxml
+}:
+
+buildPythonPackage rec {
+  pname = "dploot";
+  version = "2.2.4";
+  pyproject = true;
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-40/5KOlEFvPL9ohCfR3kqoikpKFfJO22MToq3GhamKM=";
+  };
+
+  pythonRelaxDeps = true;
+
+  nativeBuildInputs = [
+    poetry-core
+    pythonRelaxDepsHook
+  ];
+
+  propagatedBuildInputs = [
+    impacket
+    cryptography
+    pyasn1
+    lxml
+  ];
+
+  pythonImportsCheck = [ "dploot" ];
+
+  # No tests
+  doCheck = false;
+
+  meta = {
+    homepage = "https://github.com/zblurx/dploot";
+    description = "DPAPI looting remotely in Python";
+    changelog = "https://github.com/zblurx/dploot/releases/tag/${version}";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ vncsb ];
+  };
+}
diff --git a/pkgs/development/python-modules/dulwich/default.nix b/pkgs/development/python-modules/dulwich/default.nix
index fc9245f33777..97b27d14bd35 100644
--- a/pkgs/development/python-modules/dulwich/default.nix
+++ b/pkgs/development/python-modules/dulwich/default.nix
@@ -74,6 +74,8 @@ buildPythonPackage rec {
   disabledTestPaths = [
     # missing test inputs
     "dulwich/contrib/test_swift_smoke.py"
+    # flaky on high core count >4
+    "dulwich/tests/compat/test_client.py"
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/dvc-objects/default.nix b/pkgs/development/python-modules/dvc-objects/default.nix
index 34848b020c63..778bcf39fa27 100644
--- a/pkgs/development/python-modules/dvc-objects/default.nix
+++ b/pkgs/development/python-modules/dvc-objects/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "dvc-objects";
-  version = "3.0.3";
+  version = "3.0.6";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "iterative";
     repo = "dvc-objects";
     rev = "refs/tags/${version}";
-    hash = "sha256-JQ3UDUOpuxPavXkoJqbS0T7y3kpwuJ8NvqAl3DahoLU=";
+    hash = "sha256-os4MzxB4IuqJ9EsKZXGzOU23Qf6LLLiV6SLaNpMlEp8=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/dvc/default.nix b/pkgs/development/python-modules/dvc/default.nix
index ec46ef9edfc8..b4cad5f2b206 100644
--- a/pkgs/development/python-modules/dvc/default.nix
+++ b/pkgs/development/python-modules/dvc/default.nix
@@ -58,7 +58,7 @@
 
 buildPythonPackage rec {
   pname = "dvc";
-  version = "3.42.0";
+  version = "3.43.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -67,7 +67,7 @@ buildPythonPackage rec {
     owner = "iterative";
     repo = "dvc";
     rev = "refs/tags/${version}";
-    hash = "sha256-NTviaNhGe3hisP32Ccp1wHTrKXHZZP7gJFwDy7BlI/M=";
+    hash = "sha256-i9hIsn5rybDaWSzAFKazwB5wgpL0DAyUrqnxqCGLiR0=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/emoji/default.nix b/pkgs/development/python-modules/emoji/default.nix
index 3820b7a8eaf7..f2c036f7be02 100644
--- a/pkgs/development/python-modules/emoji/default.nix
+++ b/pkgs/development/python-modules/emoji/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "emoji";
-  version = "2.8.0";
+  version = "2.10.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "carpedm20";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-fnVY4KwiqvSVYijlDckLq6qDrBJj/rJGMwaQ1mMygek=";
+    hash = "sha256-cCYZ+0IFHIR9++RfUbFTRMKYB9nC5dBaPMH6dSiAXK0=";
   };
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/es-client/default.nix b/pkgs/development/python-modules/es-client/default.nix
index 7c72732f7499..96282cb54c6d 100644
--- a/pkgs/development/python-modules/es-client/default.nix
+++ b/pkgs/development/python-modules/es-client/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , certifi
 , click
+, ecs-logging
 , elastic-transport
 , elasticsearch8
 , fetchFromGitHub
@@ -19,8 +20,8 @@
 
 buildPythonPackage rec {
   pname = "es-client";
-  version = "8.11.0";
-  format = "pyproject";
+  version = "8.12.3";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -28,7 +29,7 @@ buildPythonPackage rec {
     owner = "untergeek";
     repo = "es_client";
     rev = "refs/tags/v${version}";
-    hash = "sha256-VsHpWe37/CZvGm3PqVq4mJCBA9juvOD9FLmDeW8OjiM=";
+    hash = "sha256-kskUPewMEp37OwLtopJFtbC8Nxa07qgImLejYyiUJao=";
   };
 
   pythonRelaxDeps = true;
@@ -41,6 +42,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     certifi
     click
+    ecs-logging
     elastic-transport
     elasticsearch8
     pyyaml
@@ -62,7 +64,11 @@ buildPythonPackage rec {
   disabledTests = [
     # Tests require network access
     "test_bad_version_raises"
+    "test_basic_operation"
+    "test_basic_operation"
     "test_client_info"
+    "test_logging_options_ecs"
+    "test_logging_options_json"
     "test_multiple_hosts_raises"
     "test_non_dict_passed"
     "test_skip_version_check"
diff --git a/pkgs/development/python-modules/fingerprints/default.nix b/pkgs/development/python-modules/fingerprints/default.nix
index 00c2efe7e3f3..a4e3be44b06f 100644
--- a/pkgs/development/python-modules/fingerprints/default.nix
+++ b/pkgs/development/python-modules/fingerprints/default.nix
@@ -1,21 +1,30 @@
 { lib
-, fetchFromGitHub
 , buildPythonPackage
+, fetchFromGitHub
 , normality
 , pytestCheckHook
+, pythonOlder
+, setuptools
 }:
+
 buildPythonPackage rec {
   pname = "fingerprints";
-  version = "1.1.0";
-  format = "setuptools";
+  version = "1.2.3";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "alephdata";
     repo = "fingerprints";
     rev = version;
-    hash = "sha256-rptBM08dvivfglPvl3PZd9V/7u2SHbJ/BxfVHNGMt3A=";
+    hash = "sha256-U2UslCy1OagVTtllCKsEBX4zI/qIczbxs2Cxzy+/Xys=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     normality
   ];
@@ -32,6 +41,6 @@ buildPythonPackage rec {
     description = "A library to generate entity fingerprints";
     homepage = "https://github.com/alephdata/fingerprints";
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/python-modules/fontparts/default.nix b/pkgs/development/python-modules/fontparts/default.nix
index e3113b8d1fb4..9f042cf1ef46 100644
--- a/pkgs/development/python-modules/fontparts/default.nix
+++ b/pkgs/development/python-modules/fontparts/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "fontParts";
-  version = "0.11.0";
+  version = "0.12.1";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-He3BAIWxwDIM80ixmYjyAHlwDK9bBe/qS8P4+TVEkEg=";
+    hash = "sha256-eeU13S1IcC+bsiK3YDlT4rVDeXDGcxx1wY/is8t5pCA=";
     extension = "zip";
   };
 
diff --git a/pkgs/development/python-modules/frigidaire/default.nix b/pkgs/development/python-modules/frigidaire/default.nix
index 1519347b8ba2..d8ddff87463b 100644
--- a/pkgs/development/python-modules/frigidaire/default.nix
+++ b/pkgs/development/python-modules/frigidaire/default.nix
@@ -6,28 +6,33 @@
 , idna
 , pythonOlder
 , requests
+, setuptools
 , urllib3
 }:
 
 buildPythonPackage rec {
   pname = "frigidaire";
-  version = "0.18.13";
-  format = "setuptools";
+  version = "0.18.15";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "bm1549";
-    repo = pname;
+    repo = "frigidaire";
     rev = "refs/tags/${version}";
-    hash = "sha256-FikBV4KjutQfupGPXcVT1h+BfQ099WRrmbrEJOaVCQI=";
+    hash = "sha256-5+epdQyeTGJp8iTrX6vyp4JgM45Fl5cb67Z8trNBe+8=";
   };
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace 'version = "SNAPSHOT"' 'version = "${version}"'
+      --replace-warn 'version = "SNAPSHOT"' 'version = "${version}"'
   '';
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     certifi
     chardet
diff --git a/pkgs/development/python-modules/fuse-python/default.nix b/pkgs/development/python-modules/fuse-python/default.nix
index 87f075460caf..8bcb486a6311 100644
--- a/pkgs/development/python-modules/fuse-python/default.nix
+++ b/pkgs/development/python-modules/fuse-python/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "fuse-python";
-  version = "1.0.5";
+  version = "1.0.7";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-dOX/szaCu6mlrypaBI9Ht+e0ZOv4QpG/WiWL+60Do6o=";
+    hash = "sha256-MhiAY2UkCM1HKuu2+S0135LIu0IAk3H4yJJ7s35r3Rs=";
   };
 
   buildInputs = [ fuse ];
diff --git a/pkgs/development/python-modules/gehomesdk/default.nix b/pkgs/development/python-modules/gehomesdk/default.nix
index 9b66fc47bd64..3cbc255ec7a0 100644
--- a/pkgs/development/python-modules/gehomesdk/default.nix
+++ b/pkgs/development/python-modules/gehomesdk/default.nix
@@ -7,22 +7,27 @@
 , lxml
 , pythonOlder
 , requests
+, setuptools
 , slixmpp
 , websockets
 }:
 
 buildPythonPackage rec {
   pname = "gehomesdk";
-  version = "0.5.26";
-  format = "setuptools";
+  version = "0.5.27";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-eIpBVfkUIQBriZ4wxp8ii5YmuuKF8r0lNauBEEqoNV8=";
+    hash = "sha256-H76y784lYzETgq5XSsQOSGka/kvM+hyMHzUHEJuXTuk=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     aiohttp
     bidict
diff --git a/pkgs/development/python-modules/gentools/default.nix b/pkgs/development/python-modules/gentools/default.nix
index e4760c3fe958..7dd95925f4ba 100644
--- a/pkgs/development/python-modules/gentools/default.nix
+++ b/pkgs/development/python-modules/gentools/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "gentools";
-  version = "1.2.1";
+  version = "1.2.2";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "ariebovenberg";
     repo = "gentools";
     rev = "refs/tags/v${version}";
-    hash = "sha256-RBUIji3FOIRjfp4t7zBAVSeiWaYufz4ID8nTWmhDkf8=";
+    hash = "sha256-+6KTFxOpwvGOCqy6JU87gOZmDa6MvjR10qES5wIfrjI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/georss-client/default.nix b/pkgs/development/python-modules/georss-client/default.nix
index d6529cbf9fec..51d895456da3 100644
--- a/pkgs/development/python-modules/georss-client/default.nix
+++ b/pkgs/development/python-modules/georss-client/default.nix
@@ -6,23 +6,28 @@
 , pytestCheckHook
 , pythonOlder
 , requests
+, setuptools
 , xmltodict
 }:
 
 buildPythonPackage rec {
   pname = "georss-client";
-  version = "0.15";
-  format = "setuptools";
+  version = "0.17";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "exxamalte";
     repo = "python-georss-client";
-    rev = "v${version}";
-    hash = "sha256-D1ggfEDU+vlFmi1USwdHj1due0PrCQCpKF4zaarHCFs=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-DvQifO/jirpacWZccK4WPxnm/iYs1qT5nAYQUDoleO4=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     haversine
     xmltodict
@@ -41,6 +46,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python library for accessing GeoRSS feeds";
     homepage = "https://github.com/exxamalte/python-georss-client";
+    changelog = "https://github.com/exxamalte/python-georss-client/releases/tag/v${version}";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/georss-ingv-centro-nazionale-terremoti-client/default.nix b/pkgs/development/python-modules/georss-ingv-centro-nazionale-terremoti-client/default.nix
index 273b67acfb7c..e74f3670f223 100644
--- a/pkgs/development/python-modules/georss-ingv-centro-nazionale-terremoti-client/default.nix
+++ b/pkgs/development/python-modules/georss-ingv-centro-nazionale-terremoti-client/default.nix
@@ -4,22 +4,27 @@
 , georss-client
 , pytestCheckHook
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "georss-ingv-centro-nazionale-terremoti-client";
-  version = "0.6";
-  format = "setuptools";
+  version = "0.7";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "exxamalte";
     repo = "python-georss-ingv-centro-nazionale-terremoti-client";
-    rev = "v${version}";
-    hash = "sha256-zqjo70NzpUt5zNEar0P1sl/gMb+ZcS+7GX7QGuFjMYY=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-J72yd1D4mKCOsBRLMUXKnxmjr6g0IQApTTrWjklczN8=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     georss-client
   ];
@@ -35,6 +40,7 @@ buildPythonPackage rec {
   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";
+    changelog = "https://github.com/exxamalte/python-georss-ingv-centro-nazionale-terremoti-client/releases/tag/v${version}";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/git-annex-adapter/default.nix b/pkgs/development/python-modules/git-annex-adapter/default.nix
index 1279be5e9d3f..8af128e895a0 100644
--- a/pkgs/development/python-modules/git-annex-adapter/default.nix
+++ b/pkgs/development/python-modules/git-annex-adapter/default.nix
@@ -1,20 +1,31 @@
-{ lib, buildPythonPackage, isPy3k, fetchFromGitHub, fetchpatch, substituteAll
-, python, util-linux, pygit2, gitMinimal, git-annex, cacert
+{ lib
+, buildPythonPackage
+, cacert
+, fetchFromGitHub
+, fetchpatch
+, git-annex
+, gitMinimal
+, pygit2
+, pytestCheckHook
+, python
+, pythonOlder
+, setuptools
+, substituteAll
+, util-linux
 }:
 
 buildPythonPackage rec {
   pname = "git-annex-adapter";
   version = "0.2.2";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = !isPy3k;
+  disabled = pythonOlder "3.7";
 
-  # No tests in PyPI tarball
   src = fetchFromGitHub {
     owner = "alpernebbi";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "0666vqspgnvmfs6j3kifwyxr6zmxjs0wlwis7br4zcq0gk32zgdx";
+    repo = "git-annex-adapter";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-vb0vxnwAs0/yOjpyyoGWvX6Tu+cuziGNdnXbdzXexhg=";
   };
 
   patches = [
@@ -37,17 +48,31 @@ buildPythonPackage rec {
     })
   ];
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
+  propagatedBuildInputs = [
+    pygit2
+    cacert
+  ];
+
   nativeCheckInputs = [
     gitMinimal
     util-linux # `rev` is needed in tests/test_process.py
+    pytestCheckHook
   ];
 
-  propagatedBuildInputs = [ pygit2 cacert ];
+  pythonImportsCheck = [
+    "git_annex_adapter"
+  ];
 
-  checkPhase = ''
-    ${python.interpreter} -m unittest
-  '';
-  pythonImportsCheck = [ "git_annex_adapter" ];
+  disabledTests = [
+    # KeyError and AssertionError
+    "test_jsonprocess_annex_metadata_batch"
+    "test_process_annex_metadata_batch"
+    "test_batchjson_metadata"
+  ];
 
   meta = with lib; {
     homepage = "https://github.com/alpernebbi/git-annex-adapter";
diff --git a/pkgs/development/python-modules/githubkit/default.nix b/pkgs/development/python-modules/githubkit/default.nix
index 8d8fd8cd6e32..3b7340e43596 100644
--- a/pkgs/development/python-modules/githubkit/default.nix
+++ b/pkgs/development/python-modules/githubkit/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "githubkit";
-  version = "0.11.0";
+  version = "0.11.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "yanyongyu";
     repo = "githubkit";
     rev = "refs/tags/v${version}";
-    hash = "sha256-o7u/C9Ylw903Hat4xZdb0YYVtXKSu2WljD9uiLQeFIU=";
+    hash = "sha256-nPXs6thXAshDojgHSNyEeBN/jNJkfFECSuY5f51Zozo=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/gitlike-commands/default.nix b/pkgs/development/python-modules/gitlike-commands/default.nix
index 90ac29e9b345..c5e8ab506696 100644
--- a/pkgs/development/python-modules/gitlike-commands/default.nix
+++ b/pkgs/development/python-modules/gitlike-commands/default.nix
@@ -1,14 +1,13 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, fetchpatch
 , poetry-core
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "gitlike-commands";
-  version = "0.2.1";
+  version = "0.3.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -17,18 +16,9 @@ buildPythonPackage rec {
     owner = "unixorn";
     repo = "gitlike-commands";
     rev = "refs/tags/v${version}";
-    hash = "sha256-VjweN4gigzCNvg6TccZx2Xw1p7SusKplxUTZjItTQc0=";
+    hash = "sha256-Z0l8nCKov1iMJvI3YTHvg0ey+oPju3rgaKtmk6OX44g=";
   };
 
-  patches = [
-    # Replace distutils, https://github.com/unixorn/gitlike-commands/pull/8
-    (fetchpatch {
-      name = "replace-distutils.patch";
-      url = "https://github.com/unixorn/gitlike-commands/commit/8a97206aff50a25ac6860032aa03925899c3d0aa.patch";
-      hash = "sha256-a2utKbf9vrQlYlPcdj/+OAqWf7VkuC5kvbJ53SK52IA=";
-    })
-  ];
-
   nativeBuildInputs = [
     poetry-core
   ];
diff --git a/pkgs/development/python-modules/glean-parser/default.nix b/pkgs/development/python-modules/glean-parser/default.nix
index d85a0771a809..380ada5d33a6 100644
--- a/pkgs/development/python-modules/glean-parser/default.nix
+++ b/pkgs/development/python-modules/glean-parser/default.nix
@@ -15,15 +15,15 @@
 
 buildPythonPackage rec {
   pname = "glean-parser";
-  version = "10.0.3";
+  version = "11.0.1";
   format = "setuptools";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     pname = "glean_parser";
     inherit version;
-    hash = "sha256-1XNZYp0pX57lcAaKKEaWaJLj/ttyIlnsvNjMN20pm1E=";
+    hash = "sha256-eeUjtRsP3c6fbGMJ+oxkMou3BrLWyEelP4ipPQFpXkM=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/glfw/default.nix b/pkgs/development/python-modules/glfw/default.nix
index 31d6c0a275d8..667206fa58ea 100644
--- a/pkgs/development/python-modules/glfw/default.nix
+++ b/pkgs/development/python-modules/glfw/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "glfw";
-  version = "2.6.4";
+  version = "2.6.5";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "FlorianRhiem";
     repo = "pyGLFW";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ANydW+4uLIJelUdDCHZ6WJgIJHNXzdc9jK/nZbZHi+I=";
+    hash = "sha256-mh2l63Nt9YMCPM3AplKWPx5HQZi2/cm+dUS56JB8fGA=";
   };
 
   # Patch path to GLFW shared object
diff --git a/pkgs/development/python-modules/google-ai-generativelanguage/default.nix b/pkgs/development/python-modules/google-ai-generativelanguage/default.nix
index ac6dfc171933..69a56b278358 100644
--- a/pkgs/development/python-modules/google-ai-generativelanguage/default.nix
+++ b/pkgs/development/python-modules/google-ai-generativelanguage/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "google-ai-generativelanguage";
-  version = "0.4.0";
+  version = "0.5.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-yBmQZsCPdMTpEpB3gym7nzV7oepdb4LeK8DRBVK/T4w=";
+    hash = "sha256-fF7pjNpfSeCnhbDUz+gVn+NKBQKdCEAVLzlRQUEpXX8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-asset/default.nix b/pkgs/development/python-modules/google-cloud-asset/default.nix
index a2e1e852da70..4d090d6e738e 100644
--- a/pkgs/development/python-modules/google-cloud-asset/default.nix
+++ b/pkgs/development/python-modules/google-cloud-asset/default.nix
@@ -19,14 +19,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-asset";
-  version = "3.23.0";
+  version = "3.24.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ILg5PCstA6KwOsQZYkkE8xvFAbs6na24uUx8B5T7w1M=";
+    hash = "sha256-A9Ov5a6lpcJ+6diVEjFlLKMwROuSKO/lZOuGxN6Nn7U=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-datacatalog/default.nix b/pkgs/development/python-modules/google-cloud-datacatalog/default.nix
index 24eb50c01e60..f5bdde090be1 100644
--- a/pkgs/development/python-modules/google-cloud-datacatalog/default.nix
+++ b/pkgs/development/python-modules/google-cloud-datacatalog/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-datacatalog";
-  version = "3.17.2";
+  version = "3.18.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-kKRuakMZfmt2HrU7g4Ap1ZxFmYYSiRNKvRB/xHkyp1U=";
+    hash = "sha256-rqWuOJlyB2EN3+qydRMJHLwK7RAFxUT7eEUZiAfOseE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-dataproc/default.nix b/pkgs/development/python-modules/google-cloud-dataproc/default.nix
index 3b0fff422ce1..41c8122f9857 100644
--- a/pkgs/development/python-modules/google-cloud-dataproc/default.nix
+++ b/pkgs/development/python-modules/google-cloud-dataproc/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-dataproc";
-  version = "5.8.0";
+  version = "5.9.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-sDQS3WPLhNwLsIRM2emp7vQOHQ1xlkllkFLMzw0+ldc=";
+    hash = "sha256-flH5yQBbxfG8sjYnFx3pzWJGpEd1EYpIzGMoYSgKdt8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-monitoring/default.nix b/pkgs/development/python-modules/google-cloud-monitoring/default.nix
index 63060d008efd..c0cff664760a 100644
--- a/pkgs/development/python-modules/google-cloud-monitoring/default.nix
+++ b/pkgs/development/python-modules/google-cloud-monitoring/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-monitoring";
-  version = "2.18.0";
+  version = "2.19.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Bswdf7dcXlC1S8wASUHqSyCnqfCe1+bnU1FP2MQ2CWo=";
+    hash = "sha256-zhtDkpuJ4NH1lOFYmw+oO+R/H9gP6L+ud/4fdzIknwY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-redis/default.nix b/pkgs/development/python-modules/google-cloud-redis/default.nix
index 228545f62da4..451535149511 100644
--- a/pkgs/development/python-modules/google-cloud-redis/default.nix
+++ b/pkgs/development/python-modules/google-cloud-redis/default.nix
@@ -7,20 +7,25 @@
 , pytest-asyncio
 , pytestCheckHook
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "google-cloud-redis";
-  version = "2.14.0";
-  format = "setuptools";
+  version = "2.15.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-TzuRWGGdQrsmOLidvLiC80e9t9VVu8LUNhq2Ikk0Pco=";
+    hash = "sha256-EyThUipPk96q5TuJDMKugFSGXDdWi0vOH5EzP2zzcyI=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     google-api-core
     proto-plus
diff --git a/pkgs/development/python-modules/google-cloud-tasks/default.nix b/pkgs/development/python-modules/google-cloud-tasks/default.nix
index 6aca5ab49226..bc6cf42b27c7 100644
--- a/pkgs/development/python-modules/google-cloud-tasks/default.nix
+++ b/pkgs/development/python-modules/google-cloud-tasks/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-tasks";
-  version = "2.15.1";
+  version = "2.16.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-wkk3hefFhfDvL7iSFbOZqzTLaVBJPydSItjt5P4/zxY=";
+    hash = "sha256-oybkbzeqE4sW6RN5P7AFJV3rahTCykwJndQ8uAmhiCE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-texttospeech/default.nix b/pkgs/development/python-modules/google-cloud-texttospeech/default.nix
index 7d89107c0d35..09237f9afbcd 100644
--- a/pkgs/development/python-modules/google-cloud-texttospeech/default.nix
+++ b/pkgs/development/python-modules/google-cloud-texttospeech/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-texttospeech";
-  version = "2.15.1";
+  version = "2.16.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-R4ReOtnO/auvNYlHyxlt3eovqkzfyvhkoBHbghpN6vs=";
+    hash = "sha256-flG/fsyx8DH/w49EF5ddckPZoVDvkPsz/SFI16CVWR8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-trace/default.nix b/pkgs/development/python-modules/google-cloud-trace/default.nix
index 98a62651013c..8c6085685f71 100644
--- a/pkgs/development/python-modules/google-cloud-trace/default.nix
+++ b/pkgs/development/python-modules/google-cloud-trace/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-trace";
-  version = "1.12.0";
+  version = "1.13.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-IvbMxHbOMQHUH7q86sP+/N/gV9KWez6OIMAmcTY6Uko=";
+    hash = "sha256-2oGGbqPLcPdMuSjVCG9yIV0moEToLUxjVFW22yHbRzc=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-videointelligence/default.nix b/pkgs/development/python-modules/google-cloud-videointelligence/default.nix
index ef0a5971ebbb..e8ac6fa628f5 100644
--- a/pkgs/development/python-modules/google-cloud-videointelligence/default.nix
+++ b/pkgs/development/python-modules/google-cloud-videointelligence/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-videointelligence";
-  version = "2.12.0";
+  version = "2.13.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-SwGUkyzSYEGZuIBbwQhpLmoqJZ9Hd1FrnLyXi4hx4pU=";
+    hash = "sha256-ODRF08xxjUrj6PMzfTlcYLqGrgV71OA0VHT44ktQZ4k=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-websecurityscanner/default.nix b/pkgs/development/python-modules/google-cloud-websecurityscanner/default.nix
index d4c285c3f34e..87372d653845 100644
--- a/pkgs/development/python-modules/google-cloud-websecurityscanner/default.nix
+++ b/pkgs/development/python-modules/google-cloud-websecurityscanner/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-websecurityscanner";
-  version = "1.13.0";
+  version = "1.14.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-vktbTjzNYMa8otEGGq36fYOKcNuNasWql4SBWbk84Iw=";
+    hash = "sha256-tb8BCpQtEj/0/dGSqTf+c0V0NwGZYx8y0oEHpoJWqhM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/govee-ble/default.nix b/pkgs/development/python-modules/govee-ble/default.nix
index 6b5b23c6a8a8..5499af7a1f95 100644
--- a/pkgs/development/python-modules/govee-ble/default.nix
+++ b/pkgs/development/python-modules/govee-ble/default.nix
@@ -12,18 +12,23 @@
 
 buildPythonPackage rec {
   pname = "govee-ble";
-  version = "0.27.3";
-  format = "pyproject";
+  version = "0.31.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "Bluetooth-Devices";
-    repo = pname;
+    repo = "govee-ble";
     rev = "refs/tags/v${version}";
-    hash = "sha256-yMKZe2hEkBm9c/5QuFNQMVPsdHTx9lnEVysRlbntiVY=";
+    hash = "sha256-g4tOu4nrJx1DVk2KLfF6HIEM7vTkfBg2fd7R1j+Xwrk=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace " --cov=govee_ble --cov-report=term-missing:skip-covered" ""
+  '';
+
   nativeBuildInputs = [
     poetry-core
   ];
@@ -39,11 +44,6 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace " --cov=govee_ble --cov-report=term-missing:skip-covered" ""
-  '';
-
   pythonImportsCheck = [
     "govee_ble"
   ];
diff --git a/pkgs/development/python-modules/gpaw/default.nix b/pkgs/development/python-modules/gpaw/default.nix
index e415c192511c..be43eb55857d 100644
--- a/pkgs/development/python-modules/gpaw/default.nix
+++ b/pkgs/development/python-modules/gpaw/default.nix
@@ -74,14 +74,14 @@ let
 
 in buildPythonPackage rec {
   pname = "gpaw";
-  version = "23.9.1";
+  version = "24.1.0";
   format = "setuptools";
 
   src = fetchFromGitLab {
     owner = "gpaw";
     repo = pname;
     rev = version;
-    hash = "sha256-9nnK4ksTFATO6HexnxfMiih/yoY/noyJZXZOaDG/2kc=";
+    hash = "sha256-8eX50F124R46dGN2rJS/dDvPeDmEm7XpVyTiOAjMKyI=";
   };
 
   # `inetutils` is required because importing `gpaw`, as part of
diff --git a/pkgs/development/python-modules/griffe/default.nix b/pkgs/development/python-modules/griffe/default.nix
index ac429dae7ca0..3c2ebb007713 100644
--- a/pkgs/development/python-modules/griffe/default.nix
+++ b/pkgs/development/python-modules/griffe/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "griffe";
-  version = "0.39.1";
+  version = "0.40.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "mkdocstrings";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-1YHfwiQzt348fuyKpr5YXLeAnXzZljargnTugytvNK0=";
+    hash = "sha256-VUQmyNO2e4SoXzGbd751l7TtRgvaiWOr75gSGwKGPUI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/grpcio-health-checking/default.nix b/pkgs/development/python-modules/grpcio-health-checking/default.nix
index 573670a98c30..7873404d6514 100644
--- a/pkgs/development/python-modules/grpcio-health-checking/default.nix
+++ b/pkgs/development/python-modules/grpcio-health-checking/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "grpcio-health-checking";
-  version = "1.60.0";
+  version = "1.60.1";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-R4tTAHeBIP7Z9tE01ysVeln5wGaJeJIYy/9H+vyi8Rk=";
+    hash = "sha256-fC5Izp1b2xmtV7er40ONR+verVB4ZpORQHILPijGJbM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/grpcio-reflection/default.nix b/pkgs/development/python-modules/grpcio-reflection/default.nix
index dc4fb436fbb4..713fec8af4cd 100644
--- a/pkgs/development/python-modules/grpcio-reflection/default.nix
+++ b/pkgs/development/python-modules/grpcio-reflection/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "grpcio-reflection";
-  version = "1.60.0";
+  version = "1.60.1";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-P2wMc7qPINFCDF5y/E3QOJ+sNG7Y+zKijm4ZZ7RP/zU=";
+    hash = "sha256-v+1JYUE4IcEbTfECyesFWsjENUYm2dyxEKJz79TPfZg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/gruut-ipa/default.nix b/pkgs/development/python-modules/gruut-ipa/default.nix
index 26a7223b97e7..bca9611b7e21 100644
--- a/pkgs/development/python-modules/gruut-ipa/default.nix
+++ b/pkgs/development/python-modules/gruut-ipa/default.nix
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   postPatch = ''
     patchShebangs bin/*
     substituteInPlace bin/speak-ipa \
-      --replace '${"\${src_dir}:"}' "$out/lib/${python.libPrefix}/site-packages:" \
+      --replace '${"\${src_dir}:"}' "$out/${python.sitePackages}:" \
       --replace "do espeak" "do ${espeak}/bin/espeak"
   '';
 
diff --git a/pkgs/development/python-modules/gtimelog/default.nix b/pkgs/development/python-modules/gtimelog/default.nix
deleted file mode 100644
index 6d6accc642a8..000000000000
--- a/pkgs/development/python-modules/gtimelog/default.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-{ lib, fetchFromGitHub, makeWrapper
-, glibcLocales, gobject-introspection, gtk3, libsoup, libsecret
-, buildPythonPackage, python
-, pygobject3, freezegun, mock
-}:
-
-buildPythonPackage rec {
-  pname = "gtimelog";
-  version = "unstable-2020-05-16";
-  format = "setuptools";
-
-  src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
-    rev = "80682ddbf9e0d68b8c67257289784f3b49b543d8";
-    sha256 = "0qv2kv7vc3qqlzxsisgg31cmrkkqgnmxspbj10c5fhdmwzzwi0i9";
-  };
-
-  nativeBuildInputs = [ makeWrapper gobject-introspection ];
-  buildInputs = [
-    glibcLocales gtk3 libsoup libsecret
-  ];
-
-  propagatedBuildInputs = [
-    pygobject3 freezegun mock
-  ];
-
-  checkPhase = ''
-    substituteInPlace runtests --replace "/usr/bin/env python3" "${python.interpreter}"
-    ./runtests
-  '';
-
-  pythonImportsCheck = [ "gtimelog" ];
-
-  preFixup = ''
-    wrapProgram $out/bin/gtimelog \
-      --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
-      --prefix LD_LIBRARY_PATH ":" "${gtk3.out}/lib" \
-  '';
-
-  meta = with lib; {
-    description = "A time tracking app";
-    longDescription = ''
-      GTimeLog is a small time tracking application for GNOME.
-      It's main goal is to be as unintrusive as possible.
-
-      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.gnome.gnome-keyring.enable = true;
-
-      In addition, the following packages should be added to the environment:
-      - gnome.adwaita-icon-theme
-      - gnome.dconf
-    '';
-    homepage = "https://gtimelog.org/";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ oxzi ];
-  };
-}
diff --git a/pkgs/development/python-modules/gurobipy/linux.nix b/pkgs/development/python-modules/gurobipy/linux.nix
index e9a72cbb5cba..a7c519406e74 100644
--- a/pkgs/development/python-modules/gurobipy/linux.nix
+++ b/pkgs/development/python-modules/gurobipy/linux.nix
@@ -16,7 +16,7 @@ buildPythonPackage {
 
   postFixup = ''
     patchelf --set-rpath $out/lib \
-      $out/lib/${python.libPrefix}/site-packages/gurobipy/gurobipy.so
+      $out/${python.sitePackages}/gurobipy/gurobipy.so
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/hahomematic/default.nix b/pkgs/development/python-modules/hahomematic/default.nix
index f06dd4109abe..a0ab0eefe58e 100644
--- a/pkgs/development/python-modules/hahomematic/default.nix
+++ b/pkgs/development/python-modules/hahomematic/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "hahomematic";
-  version = "2024.1.8";
+  version = "2024.2.0";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "danielperna84";
     repo = "hahomematic";
     rev = "refs/tags/${version}";
-    hash = "sha256-ln+Dich2I503LA5nIWK9k3B83LjIBsRUmBv2xJmFRQI=";
+    hash = "sha256-/cs1wyz3v9dLMAAgd0ipC7Z56ZzFQEBq8oqvousgr+U=";
   };
 
   __darwinAllowLocalNetworking = true;
diff --git a/pkgs/development/python-modules/hg-commitsigs/default.nix b/pkgs/development/python-modules/hg-commitsigs/default.nix
index a97c2be2b98c..7a97bff33316 100644
--- a/pkgs/development/python-modules/hg-commitsigs/default.nix
+++ b/pkgs/development/python-modules/hg-commitsigs/default.nix
@@ -20,9 +20,9 @@ stdenv.mkDerivation rec {
   dontBuild = true;
 
   installPhase = ''
-    mkdir -p $out/lib/${python.libPrefix}/site-packages/hgext3rd/
+    mkdir -p $out/${python.sitePackages}/hgext3rd/
     install -D $src/commitsigs.py \
-               $out/lib/${python.libPrefix}/site-packages/hgext3rd/
+               $out/${python.sitePackages}/hgext3rd/
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/hwi/default.nix b/pkgs/development/python-modules/hwi/default.nix
index 046dbc7bb4ff..0f4c21e86e7c 100644
--- a/pkgs/development/python-modules/hwi/default.nix
+++ b/pkgs/development/python-modules/hwi/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "hwi";
-  version = "2.3.1";
+  version = "2.4.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "bitcoin-core";
     repo = "HWI";
     rev = "refs/tags/${version}";
-    hash = "sha256-V4BWB4mCONQ8kjAy6ySonAbCUTaKpBTvhSnHmoH8TQM=";
+    hash = "sha256-a1ppYDuY7CtNrKSvuAofS79nvDaYUMIm4FCHiiQYrtQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/iminuit/default.nix b/pkgs/development/python-modules/iminuit/default.nix
index 3969b1c9ca51..675a751f0096 100644
--- a/pkgs/development/python-modules/iminuit/default.nix
+++ b/pkgs/development/python-modules/iminuit/default.nix
@@ -20,14 +20,14 @@
 
 buildPythonPackage rec {
   pname = "iminuit";
-  version = "2.24.0";
+  version = "2.25.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-JatjHDyOAksbzHyW9mM4yqxUpKIyTVXx47pWF4FuRP0=";
+    hash = "sha256-e99ZRg05Dy0DznVcAVGy7D0gMwC8UVQb+Ch7Q8EgTGY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/influxdb-client/default.nix b/pkgs/development/python-modules/influxdb-client/default.nix
index 8e0bd695c0f6..6fb8974642ee 100644
--- a/pkgs/development/python-modules/influxdb-client/default.nix
+++ b/pkgs/development/python-modules/influxdb-client/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "influxdb-client";
-  version = "1.39.0";
+  version = "1.40.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "influxdata";
     repo = "influxdb-client-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-cj3qeT5wE/RqrwOW1MV9sVG+khxyRAO5438omqbKbmY=";
+    hash = "sha256-+I5DxcxNxIRDwtfYXLvXPl8Z3FKcSWyaYtv1KHT9QO4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/ipwhois/default.nix b/pkgs/development/python-modules/ipwhois/default.nix
index f9a80ff2f7b8..c6e50535bad4 100644
--- a/pkgs/development/python-modules/ipwhois/default.nix
+++ b/pkgs/development/python-modules/ipwhois/default.nix
@@ -21,7 +21,7 @@ buildPythonPackage rec {
 
   src = fetchFromGitHub {
     owner = "secynic";
-    repo = pname;
+    repo = "ipwhois";
     rev = "refs/tags/v${version}";
     hash = "sha256-2CfRRHlIIaycUtzKeMBKi6pVPeBCb1nW3/1hoxQU1YM=";
   };
@@ -35,6 +35,8 @@ buildPythonPackage rec {
     })
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   pythonRelaxDeps = [
     "dnspython"
   ];
@@ -65,6 +67,8 @@ buildPythonPackage rec {
   disabledTestPaths = [
     # Tests require network access
     "ipwhois/tests/online/"
+    # Stress test
+    "ipwhois/tests/stress/test_experimental.py"
   ];
 
   disabledTests = [
diff --git a/pkgs/development/python-modules/jq/jq-py-setup.patch b/pkgs/development/python-modules/jq/jq-py-setup.patch
deleted file mode 100644
index 0894b776fef6..000000000000
--- a/pkgs/development/python-modules/jq/jq-py-setup.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-diff --git a/setup.py b/setup.py
-index 01cc813..15e9048 100644
---- a/setup.py
-+++ b/setup.py
-@@ -1,97 +1,18 @@
- #!/usr/bin/env python
- 
- import os
--import subprocess
--import tarfile
--import shutil
--import sysconfig
- 
- from setuptools import setup
--from setuptools.command.build_ext import build_ext
- from setuptools.extension import Extension
- 
--
--def _path_in_dir(relative_path):
--    return os.path.abspath(os.path.join(os.path.dirname(__file__), relative_path))
--
--def _dep_source_path(relative_path):
--    return os.path.join(_path_in_dir("deps"), relative_path)
--
--def _dep_build_path(relative_path):
--    return os.path.join(_path_in_dir("_deps/build"), relative_path)
--
- def _read(fname):
-     return open(os.path.join(os.path.dirname(__file__), fname)).read()
- 
- 
--jq_lib_tarball_path = _dep_source_path("jq-1.6.tar.gz")
--jq_lib_dir = _dep_build_path("jq-1.6")
--
--oniguruma_version = "6.9.4"
--oniguruma_lib_tarball_path = _dep_source_path("onig-{}.tar.gz".format(oniguruma_version))
--oniguruma_lib_build_dir = _dep_build_path("onig-{}".format(oniguruma_version))
--oniguruma_lib_install_dir = _dep_build_path("onig-install-{}".format(oniguruma_version))
--
--class jq_build_ext(build_ext):
--    def run(self):
--        if not os.path.exists(_dep_build_path(".")):
--            os.makedirs(_dep_build_path("."))
--        self._build_oniguruma()
--        self._build_libjq()
--        build_ext.run(self)
--
--    def _build_oniguruma(self):
--        self._build_lib(
--            tarball_path=oniguruma_lib_tarball_path,
--            lib_dir=oniguruma_lib_build_dir,
--            commands=[
--                ["./configure", "CFLAGS=-fPIC", "--prefix=" + oniguruma_lib_install_dir],
--                ["make"],
--                ["make", "install"],
--            ])
--
--
--    def _build_libjq(self):
--        self._build_lib(
--            tarball_path=jq_lib_tarball_path,
--            lib_dir=jq_lib_dir,
--            commands=[
--                ["./configure", "CFLAGS=-fPIC -pthread", "--disable-maintainer-mode", "--with-oniguruma=" + oniguruma_lib_install_dir],
--                ["make"],
--            ])
--
--    def _build_lib(self, tarball_path, lib_dir, commands):
--        self._extract_tarball(
--            tarball_path=tarball_path,
--            lib_dir=lib_dir,
--        )
--
--        macosx_deployment_target = sysconfig.get_config_var("MACOSX_DEPLOYMENT_TARGET")
--        if macosx_deployment_target:
--            os.environ['MACOSX_DEPLOYMENT_TARGET'] = str(macosx_deployment_target)
--
--        def run_command(args):
--            print("Executing: %s" % ' '.join(args))
--            subprocess.check_call(args, cwd=lib_dir)
--
--        for command in commands:
--            run_command(command)
--
--    def _extract_tarball(self, tarball_path, lib_dir):
--        if os.path.exists(lib_dir):
--            shutil.rmtree(lib_dir)
--        tarfile.open(tarball_path, "r:gz").extractall(_dep_build_path("."))
--
--
- jq_extension = Extension(
-     "jq",
-     sources=["jq.c"],
--    include_dirs=[os.path.join(jq_lib_dir, "src")],
--    extra_link_args=["-lm"],
--    extra_objects=[
--        os.path.join(jq_lib_dir, ".libs/libjq.a"),
--        os.path.join(oniguruma_lib_install_dir, "lib/libonig.a"),
--    ],
-+    libraries=["jq"]
- )
- 
- setup(
-@@ -104,7 +25,6 @@ def _extract_tarball(self, tarball_path, lib_dir):
-     python_requires='>=3.5',
-     license='BSD 2-Clause',
-     ext_modules = [jq_extension],
--    cmdclass={"build_ext": jq_build_ext},
-     classifiers=[
-         'Development Status :: 5 - Production/Stable',
-         'Intended Audience :: Developers',
diff --git a/pkgs/development/python-modules/json-stream-rs-tokenizer/default.nix b/pkgs/development/python-modules/json-stream-rs-tokenizer/default.nix
index 6800635c0b2f..9609d68c6961 100644
--- a/pkgs/development/python-modules/json-stream-rs-tokenizer/default.nix
+++ b/pkgs/development/python-modules/json-stream-rs-tokenizer/default.nix
@@ -6,6 +6,7 @@
 , fetchFromGitHub
 , json-stream
 , json-stream-rs-tokenizer
+, pythonOlder
 , rustc
 , rustPlatform
 , setuptools
@@ -15,14 +16,16 @@
 
 buildPythonPackage rec {
   pname = "json-stream-rs-tokenizer";
-  version = "0.4.22";
-  format = "setuptools";
+  version = "0.4.25";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "smheidrich";
     repo = "py-json-stream-rs-tokenizer";
     rev = "refs/tags/v${version}";
-    hash = "sha256-EW726gUXTBX3gTxlFQ45RgkUa2Z4tIjUZxO4GBLXgEs=";
+    hash = "sha256-zo/jRAWSwcOnO8eU4KhDNz44P6xDGcrZf9CflwsSvF0=";
   };
 
   cargoDeps = rustPlatform.importCargoLock {
diff --git a/pkgs/development/python-modules/jsonargparse/default.nix b/pkgs/development/python-modules/jsonargparse/default.nix
index afe6f4220904..999811b7eee7 100644
--- a/pkgs/development/python-modules/jsonargparse/default.nix
+++ b/pkgs/development/python-modules/jsonargparse/default.nix
@@ -25,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "jsonargparse";
-  version = "4.27.2";
+  version = "4.27.3";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -34,7 +34,7 @@ buildPythonPackage rec {
     owner = "omni-us";
     repo = "jsonargparse";
     rev = "refs/tags/v${version}";
-    hash = "sha256-qvc0HpwgYXDayA0q0D598rCb+I3LuaPm2tmmd0E3rrk=";
+    hash = "sha256-ZhNop6Zo1uWJhX5XEkjTq3XcRw1WzFd6jrk5CpBGCwo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/jupyter-book/default.nix b/pkgs/development/python-modules/jupyter-book/default.nix
index 69d0734bfa00..bdb7b5772941 100644
--- a/pkgs/development/python-modules/jupyter-book/default.nix
+++ b/pkgs/development/python-modules/jupyter-book/default.nix
@@ -3,13 +3,12 @@
 , fetchPypi
 , pythonOlder
 , flit-core
-, pythonRelaxDepsHook
 , click
-, docutils
 , jinja2
 , jsonschema
 , linkify-it-py
 , myst-nb
+, myst-parser
 , pyyaml
 , sphinx
 , sphinx-comments
@@ -26,29 +25,28 @@
 
 buildPythonPackage rec {
   pname = "jupyter-book";
-  version = "0.15.1";
+  version = "1.0.0";
+  pyproject = true;
 
-  format = "pyproject";
-
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.9";
 
   src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-ihY07Bb37t7g0Rbx5ft8SCAyia2S2kLglRnccdlWwBA=";
+    inherit version;
+    pname = "jupyter_book";
+    hash = "sha256-U5xdBJNUYgDZ3ie9S1936uoDEV+JN/gl1P+Cs4AamH4=";
   };
 
   nativeBuildInputs = [
     flit-core
-    pythonRelaxDepsHook
   ];
 
   propagatedBuildInputs = [
     click
-    docutils
     jinja2
     jsonschema
     linkify-it-py
     myst-nb
+    myst-parser
     pyyaml
     sphinx
     sphinx-comments
@@ -63,16 +61,9 @@ buildPythonPackage rec {
     sphinx-multitoc-numbering
   ];
 
-  pythonRelaxDeps = [
-    "docutils"
-    "myst-nb"
-    "sphinx"
-    "sphinx-thebe"
-    "sphinxcontrib-bibtex"
-  ];
-
   pythonImportsCheck = [
     "jupyter_book"
+    "jupyter_book.cli.main"
   ];
 
   meta = with lib; {
@@ -81,5 +72,6 @@ buildPythonPackage rec {
     changelog = "https://github.com/executablebooks/jupyter-book/blob/v${version}/CHANGELOG.md";
     license = licenses.bsd3;
     maintainers = with maintainers; [ marsam ];
+    mainProgram = "jupyter-book";
   };
 }
diff --git a/pkgs/development/python-modules/kaa-base/default.nix b/pkgs/development/python-modules/kaa-base/default.nix
index 96c83a4ac81d..8d83bdb5b110 100644
--- a/pkgs/development/python-modules/kaa-base/default.nix
+++ b/pkgs/development/python-modules/kaa-base/default.nix
@@ -24,20 +24,20 @@ buildPythonPackage rec {
   installPhase = ''
     runHook preInstall
 
-    mkdir -p "$out/lib/${python.libPrefix}/site-packages"
+    mkdir -p "$out/${python.sitePackages}"
 
-    export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
+    export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
 
     ${python}/bin/${python.executable} setup.py install \
-      --install-lib=$out/lib/${python.libPrefix}/site-packages \
+      --install-lib=$out/${python.sitePackages} \
       --prefix="$out"
 
-    eapth="$out/lib/${python.libPrefix}"/site-packages/easy-install.pth
+    eapth="$out/${python.sitePackages}/easy-install.pth"
     if [ -e "$eapth" ]; then
     mv "$eapth" $(dirname "$eapth")/${pname}-${version}.pth
     fi
 
-    rm -f "$out/lib/${python.libPrefix}"/site-packages/site.py*
+    rm -f "$out/${python.sitePackages}"/site.py*
 
     runHook postInstall
   '';
diff --git a/pkgs/development/python-modules/kaa-metadata/default.nix b/pkgs/development/python-modules/kaa-metadata/default.nix
index de71d207b876..20ae66f17a9d 100644
--- a/pkgs/development/python-modules/kaa-metadata/default.nix
+++ b/pkgs/development/python-modules/kaa-metadata/default.nix
@@ -29,20 +29,20 @@ buildPythonPackage rec {
   installPhase = ''
     runHook preInstall
 
-    mkdir -p "$out/lib/${python.libPrefix}/site-packages"
+    mkdir -p "$out/${python.sitePackages}"
 
-    export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
+    export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
 
     ${python}/bin/${python.executable} setup.py install \
-      --install-lib=$out/lib/${python.libPrefix}/site-packages \
+      --install-lib=$out/${python.sitePackages} \
       --prefix="$out"
 
-    eapth="$out/lib/${python.libPrefix}"/site-packages/easy-install.pth
+    eapth="$out/${python.sitePackages}/easy-install.pth"
     if [ -e "$eapth" ]; then
     mv "$eapth" $(dirname "$eapth")/${pname}-${version}.pth
     fi
 
-    rm -f "$out/lib/${python.libPrefix}"/site-packages/site.py*
+    rm -f "$out/${python.sitePackages}"/site.py*
 
     runHook postInstall
   '';
diff --git a/pkgs/development/python-modules/keyring-pass/default.nix b/pkgs/development/python-modules/keyring-pass/default.nix
new file mode 100644
index 000000000000..c9ac11c9313a
--- /dev/null
+++ b/pkgs/development/python-modules/keyring-pass/default.nix
@@ -0,0 +1,78 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, gnupg
+, keyring
+, pass
+, poetry-core
+, pythonOlder
+}:
+buildPythonPackage rec {
+  pname = "keyring-pass";
+  version = "0.9.2";
+  disabled = pythonOlder "3.6";
+
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "nazarewk";
+    repo = "keyring_pass";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-Sf7eDOB3prH2s6BzdBtxewSweC0ibLXVxNHBJRRaJe4=";
+  };
+
+  postPatch = ''
+    substituteInPlace keyring_pass/__init__.py \
+      --replace 'pass_binary = "pass"' 'pass_binary = "${lib.getExe pass}"'
+  '';
+
+  nativeBuildInputs = [
+    poetry-core
+  ];
+
+  nativeCheckInputs = [
+    keyring
+    gnupg
+  ];
+
+  checkPhase = ''
+    export HOME="$TMPDIR"
+
+    # generate temporary GPG identity
+    cat <<EOF | gpg --gen-key --batch /dev/stdin
+    %no-protection
+    %transient-key
+    Key-Type: 1
+    Key-Length: 1024
+    Subkey-Type: 1
+    Subkey-Length: 1024
+    Name-Real: test
+    Name-Email: test@example.com
+    Expire-Date: 1
+    EOF
+
+    # configure password store
+    ${lib.getExe pass} init test@example.com
+
+    # Configure `keyring` CLI
+    # first make sure `keyring-pass` is in "$PYTHONPATH"
+    [[ "$PYTHONPATH" == *"$out"/lib/python*/site-packages* ]]
+    export PYTHON_KEYRING_BACKEND="keyring_pass.PasswordStoreBackend"
+
+    # confirm set/get/del works
+    keyring set test-service test-username <<<"test-password"
+    test "$(keyring get test-service test-username)" == "test-password"
+    keyring del test-service test-username
+  '';
+
+  pythonImportsCheck = [
+    "keyring_pass"
+  ];
+
+  meta = {
+    description = "Password Store (pass) backend for python's keyring";
+    homepage = "https://github.com/nazarewk/keyring_pass";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.nazarewk ];
+  };
+}
diff --git a/pkgs/development/python-modules/langchain-community/default.nix b/pkgs/development/python-modules/langchain-community/default.nix
index d5935a67d8d2..0d0046b216ee 100644
--- a/pkgs/development/python-modules/langchain-community/default.nix
+++ b/pkgs/development/python-modules/langchain-community/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "langchain-community";
-  version = "0.0.13";
+  version = "0.0.16";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "langchain_community";
     inherit version;
-    hash = "sha256-z2bG/3/L61gvXojuAN7Op/3spczd2nJQRvKO/Gl8Qac=";
+    hash = "sha256-wGUSqTAToG+6dnnNWhJU/4uSfN3S0fvgzERL97vfC4w=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/langchain-core/default.nix b/pkgs/development/python-modules/langchain-core/default.nix
index 3268ed2e2275..8e8309874f1e 100644
--- a/pkgs/development/python-modules/langchain-core/default.nix
+++ b/pkgs/development/python-modules/langchain-core/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "langchain-core";
-  version = "0.1.11";
+  version = "0.1.16";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "langchain_core";
     inherit version;
-    hash = "sha256-StS1ltv9vIOTyW1AmDuXrsFlqwumZDC+rnPj2HnBOg0=";
+    hash = "sha256-jLVG7tMYAJ7hqKOB0QgHTt3wOVrmHrJD2wDXbh4mXok=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/ldfparser/default.nix b/pkgs/development/python-modules/ldfparser/default.nix
index f71543c828bb..b5a39128d786 100644
--- a/pkgs/development/python-modules/ldfparser/default.nix
+++ b/pkgs/development/python-modules/ldfparser/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "ldfparser";
-  version = "0.21.0";
+  version = "0.22.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "c4deszes";
     repo = "ldfparser";
     rev = "refs/tags/v${version}";
-    hash = "sha256-4uwze9TJYmNvhDiKYyUX6Ya+eQb0mbpQQaawUWmO3Gs=";
+    hash = "sha256-oHFfoeD2C69VIW82akbp0tmxZp5ImA+l5ZDnN9cjhhA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/libknot/default.nix b/pkgs/development/python-modules/libknot/default.nix
index fd5b0451381b..f79e4d638eba 100644
--- a/pkgs/development/python-modules/libknot/default.nix
+++ b/pkgs/development/python-modules/libknot/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "libknot";
-  version = "3.3.3";
+  version = "3.3.4";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-w8VAA+llRg1xeAMRe7ISHo8H+qGi247jwOjTZHecFVM=";
+    hash = "sha256-KRxc34lqOGuYJM2mUsYrjfiVCQNBxcQyO30wPLf17+Q=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/libvirt/default.nix b/pkgs/development/python-modules/libvirt/default.nix
index de5a75ee9eea..e10f7c056c6b 100644
--- a/pkgs/development/python-modules/libvirt/default.nix
+++ b/pkgs/development/python-modules/libvirt/default.nix
@@ -2,14 +2,14 @@
 
 buildPythonPackage rec {
   pname = "libvirt";
-  version = "9.10.0";
+  version = "10.0.0";
   format = "setuptools";
 
   src = fetchFromGitLab {
     owner = "libvirt";
     repo = "libvirt-python";
     rev = "v${version}";
-    hash = "sha256-7qJieTLPzyHvhOLUsti4Mbt94iba2eTZd6OvPn3uLEA=";
+    hash = "sha256-zl1Hfm7flRflNjIpLoLAlPDysYlieC05HEd/mzFW8pU=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/development/python-modules/litellm/default.nix b/pkgs/development/python-modules/litellm/default.nix
index 5647c2ee7909..248fa5c47607 100644
--- a/pkgs/development/python-modules/litellm/default.nix
+++ b/pkgs/development/python-modules/litellm/default.nix
@@ -15,7 +15,7 @@
 , httpx
 }:
 let
-  version = "1.19.0";
+  version = "1.20.9";
 in
 buildPythonPackage rec {
   pname = "litellm";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "BerriAI";
     repo = "litellm";
     rev = "refs/tags/v${version}";
-    hash = "sha256-cHGLOcOC9G6FlJfyrf+owURfGtn/gCAJuhSPt9lJS0o=";
+    hash = "sha256-Sb5vfaKFUjBWfR/SPHLJLPD/EpoEwW56xKqgbUgM0K4=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/losant-rest/default.nix b/pkgs/development/python-modules/losant-rest/default.nix
index fbc65794da26..6587f99d8118 100644
--- a/pkgs/development/python-modules/losant-rest/default.nix
+++ b/pkgs/development/python-modules/losant-rest/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "losant-rest";
-  version = "1.19.3";
+  version = "1.19.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "Losant";
     repo = "losant-rest-python";
     rev = "v${version}";
-    hash = "sha256-Ppy7vOA7ix76nvzVEP+BkL8dsoN0oXNX/5IZyhXDoSw=";
+    hash = "sha256-aVOviCeYi/oj1Xv7I0d4U+JBU0w3wbjORXOim/g5S7U=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/maestral/default.nix b/pkgs/development/python-modules/maestral/default.nix
index 3e871a90562b..4645174e122f 100644
--- a/pkgs/development/python-modules/maestral/default.nix
+++ b/pkgs/development/python-modules/maestral/default.nix
@@ -62,7 +62,7 @@ buildPythonPackage rec {
   makeWrapperArgs = [
     # Add the installed directories to the python path so the daemon can find them
     "--prefix PYTHONPATH : ${makePythonPath propagatedBuildInputs}"
-    "--prefix PYTHONPATH : $out/lib/${python.libPrefix}/site-packages"
+    "--prefix PYTHONPATH : $out/${python.sitePackages}"
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/meep/default.nix b/pkgs/development/python-modules/meep/default.nix
index d99b5c3e2e0c..70a588f1c8aa 100644
--- a/pkgs/development/python-modules/meep/default.nix
+++ b/pkgs/development/python-modules/meep/default.nix
@@ -113,7 +113,7 @@ buildPythonPackage rec {
   checkPhase = ''
     runHook preCheck
 
-    export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
+    export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
 
     # Generate a python test script
     cat > test.py << EOF
diff --git a/pkgs/development/python-modules/meshtastic/default.nix b/pkgs/development/python-modules/meshtastic/default.nix
index 9dcc2d4a3a56..534623abccdd 100644
--- a/pkgs/development/python-modules/meshtastic/default.nix
+++ b/pkgs/development/python-modules/meshtastic/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "meshtastic";
-  version = "2.2.19";
+  version = "2.2.20";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = "meshtastic";
     repo = "Meshtastic-python";
     rev = "refs/tags/${version}";
-    hash = "sha256-5VXvh0W3llSnpIalg1e+JyFgmlTV5J2x4VC/j2+9Xb8=";
+    hash = "sha256-0q8omX306iM3p52u39Dc7m6oxAPo9Fs6CEVicYdIMT4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/mkdocs-material/default.nix b/pkgs/development/python-modules/mkdocs-material/default.nix
index e8df6bbc8253..317271a10d55 100644
--- a/pkgs/development/python-modules/mkdocs-material/default.nix
+++ b/pkgs/development/python-modules/mkdocs-material/default.nix
@@ -32,7 +32,7 @@
 
 buildPythonPackage rec {
   pname = "mkdocs-material";
-  version = "9.4.14";
+  version = "9.5.6";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -41,7 +41,7 @@ buildPythonPackage rec {
     owner = "squidfunk";
     repo = "mkdocs-material";
     rev = "refs/tags/${version}";
-    hash = "sha256-oP0DeSRgoLx6boEOa3if5BitGXmJ11DoUVZK16Sjlwg=";
+    hash = "sha256-t+kS/MZ6kfga+LPSBj0h+vkY/u/bd3iqRUyOHXfrwDU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix b/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix
index 85687b1882ba..60fe20c468af 100644
--- a/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix
+++ b/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "mkdocs-swagger-ui-tag";
-  version = "0.6.7";
+  version = "0.6.8";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "Blueswen";
     repo = "mkdocs-swagger-ui-tag";
     rev = "refs/tags/v${version}";
-    hash = "sha256-lvE/mN56X2fx835GFNDYQc7ptxBYqwjrJ9Z6Flcvufg=";
+    hash = "sha256-TV7V1PttzyLeVQ/Ag/tMV2aqtCys1mlYpj6i0x+ko/w=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/mpi4py/default.nix b/pkgs/development/python-modules/mpi4py/default.nix
index f41519c00112..deb54ab149be 100644
--- a/pkgs/development/python-modules/mpi4py/default.nix
+++ b/pkgs/development/python-modules/mpi4py/default.nix
@@ -25,11 +25,11 @@ buildPythonPackage rec {
   configurePhase = "";
 
   installPhase = ''
-    mkdir -p "$out/lib/${python.libPrefix}/site-packages"
-    export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
+    mkdir -p "$out/${python.sitePackages}"
+    export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
 
     ${python}/bin/${python.executable} setup.py install \
-      --install-lib=$out/lib/${python.libPrefix}/site-packages \
+      --install-lib=$out/${python.sitePackages} \
       --prefix="$out"
 
     # --install-lib:
diff --git a/pkgs/development/python-modules/myjwt/default.nix b/pkgs/development/python-modules/myjwt/default.nix
index a54ab560a235..c310c7efe1a1 100644
--- a/pkgs/development/python-modules/myjwt/default.nix
+++ b/pkgs/development/python-modules/myjwt/default.nix
@@ -12,6 +12,7 @@
 , pytest-mock
 , pytestCheckHook
 , pythonOlder
+, pythonRelaxDepsHook
 , questionary
 , requests
 , requests-mock
@@ -20,7 +21,7 @@
 buildPythonPackage rec {
   pname = "myjwt";
   version = "1.6.1";
-  format = "pyproject";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -33,12 +34,17 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace "1.6.0" "${version}" \
-      --replace 'cryptography = "^39.0.2"' 'cryptography = "^39.0.0"'
+      --replace-warn "1.6.0" "${version}"
   '';
 
+  pythonRelaxDeps = [
+    "cryptography"
+    "questionary"
+  ];
+
   nativeBuildInputs = [
     poetry-core
+    pythonRelaxDepsHook
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/napari-npe2/default.nix b/pkgs/development/python-modules/napari-npe2/default.nix
index 64659858258b..95ae7bfb39bb 100644
--- a/pkgs/development/python-modules/napari-npe2/default.nix
+++ b/pkgs/development/python-modules/napari-npe2/default.nix
@@ -13,6 +13,7 @@
 , pyyaml
 , rich
 , typer
+, tomli-w
 }:
 
 buildPythonPackage rec {
@@ -46,6 +47,7 @@ buildPythonPackage rec {
     pyyaml
     rich
     typer
+    tomli-w
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/neo4j/default.nix b/pkgs/development/python-modules/neo4j/default.nix
index 5215da38339c..4db2398c25b5 100644
--- a/pkgs/development/python-modules/neo4j/default.nix
+++ b/pkgs/development/python-modules/neo4j/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "neo4j";
-  version = "5.16.0";
+  version = "5.17.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "neo4j";
     repo = "neo4j-python-driver";
     rev = "refs/tags/${version}";
-    hash = "sha256-ly/R2ufd5gEkUyfajpeMQblTiKipC9HFtxkWkh16zLo=";
+    hash = "sha256-BZo4TzFrH1ATl09zRXy+1AFJSBopmByDHe7oITZy7pA=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/nibabel/default.nix b/pkgs/development/python-modules/nibabel/default.nix
index 34066a583646..3bccab344741 100644
--- a/pkgs/development/python-modules/nibabel/default.nix
+++ b/pkgs/development/python-modules/nibabel/default.nix
@@ -20,14 +20,14 @@
 
 buildPythonPackage rec {
   pname = "nibabel";
-  version = "5.1.0";
-  format = "pyproject";
+  version = "5.2.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-znPKXpVyCechmiI8tx93I1yd8qz00/J/hhujjpSBrFM=";
+    hash = "sha256-Pfjxq5gdG9kvQzHVZVKNEmq5cX/b1M/mj0P80cK/P1I=";
   };
 
   nativeBuildInputs = [
@@ -77,13 +77,9 @@ buildPythonPackage rec {
     export PATH=$out/bin:$PATH
   '';
 
-  disabledTests = [
-    # https://github.com/nipy/nibabel/issues/951
-    "test_filenames"
-  ];
-
   meta = with lib; {
     homepage = "https://nipy.org/nibabel";
+    changelog = "https://github.com/nipy/nibabel/blob/${version}/Changelog";
     description = "Access a multitude of neuroimaging data formats";
     license = licenses.mit;
     maintainers = with maintainers; [ ashgillman ];
diff --git a/pkgs/development/python-modules/nipreps-versions/default.nix b/pkgs/development/python-modules/nipreps-versions/default.nix
new file mode 100644
index 000000000000..1c54ab9d905e
--- /dev/null
+++ b/pkgs/development/python-modules/nipreps-versions/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, flit-scm
+, packaging
+, setuptools-scm
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "nipreps-versions";
+  version = "1.0.4";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "nipreps";
+    repo = "version-schemes";
+    rev = "refs/tags/${version}";
+    hash = "sha256-B2wtLurzgk59kTooH51a2dewK7aEyA0dAm64Wp+tqhM=";
+  };
+
+  env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    flit-scm
+    setuptools-scm
+  ];
+
+  propagatedBuildInputs = [
+    packaging
+  ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+  pythonImportsCheck = [ "nipreps_versions" ];
+
+  meta = with lib; {
+    description = "Setuptools_scm plugin for nipreps version schemes";
+    homepage = "https://github.com/nipreps/version-schemes";
+    changelog = "https://github.com/nipreps/version-schemes/blob/${src.rev}/CHANGES.md";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ bcdarwin ];
+  };
+}
diff --git a/pkgs/development/python-modules/niworkflows/default.nix b/pkgs/development/python-modules/niworkflows/default.nix
new file mode 100644
index 000000000000..494a834c937a
--- /dev/null
+++ b/pkgs/development/python-modules/niworkflows/default.nix
@@ -0,0 +1,101 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, hatch-vcs
+, hatchling
+, pytestCheckHook
+, attrs
+, importlib-resources
+, jinja2
+, looseversion
+, matplotlib
+, nibabel
+, nilearn
+, nipype
+, nitransforms
+, numpy
+, packaging
+, pandas
+, pybids
+, pyyaml
+, scikit-image
+, scipy
+, seaborn
+, svgutils
+, templateflow
+, traits
+, transforms3d
+}:
+
+buildPythonPackage rec {
+  pname = "niworkflows";
+  version = "1.10.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "nipreps";
+    repo = "niworkflows";
+    rev = "refs/tags/${version}";
+    hash = "sha256-wQPk9imDvomg+NTWk+VeW1TE2QlvMyi1YYVVaznhktU=";
+  };
+
+  postPatch = ''
+    substituteInPlace pyproject.toml --replace '"traits < 6.4"' '"traits"'
+  '';
+
+  nativeBuildInputs = [
+    hatch-vcs
+    hatchling
+  ];
+
+  propagatedBuildInputs = [
+    attrs
+    importlib-resources
+    jinja2
+    looseversion
+    matplotlib
+    nibabel
+    nilearn
+    nipype
+    nitransforms
+    numpy
+    packaging
+    pandas
+    pybids
+    pyyaml
+    scikit-image
+    scipy
+    seaborn
+    svgutils
+    templateflow
+    traits
+    transforms3d
+  ];
+
+  env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeCheckInputs = [ pytestCheckHook ];
+  preCheck = ''export HOME=$(mktemp -d)'';
+  pytestFlagsArray = [ "niworkflows" ];
+  # try to download data:
+  disabledTests = [
+    "test_GenerateCifti"
+    "ROIsPlot"
+    "ROIsPlot2"
+    "test_SimpleShowMaskRPT"
+    "test_cifti_surfaces_plot"
+    "niworkflows.utils.misc.get_template_specs"
+    "niworkflows.interfaces.cifti._prepare_cifti"
+  ];
+  disabledTestPaths = [ "niworkflows/tests/test_registration.py" ];
+
+  pythonImportsCheck = [ "niworkflows" ];
+
+  meta = with lib; {
+    description = "Common workflows for MRI (anatomical, functional, diffusion, etc.)";
+    homepage = "https://github.com/nipreps/niworkflows";
+    changelog = "https://github.com/nipreps/niworkflows/blob/${src.rev}/CHANGES.rst";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ bcdarwin ];
+  };
+}
diff --git a/pkgs/development/python-modules/nose2/default.nix b/pkgs/development/python-modules/nose2/default.nix
index 28dd8df3e263..de96b74709ed 100644
--- a/pkgs/development/python-modules/nose2/default.nix
+++ b/pkgs/development/python-modules/nose2/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "nose2";
-  version = "0.14.0";
+  version = "0.14.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-XCjXcKC5pwKGK9bDdVuizS95lN1RjJguXOKY1/N0ZqQ=";
+    hash = "sha256-f48Dohyd4sMwFZM6/O9yv45KLV3+w7QAkih95uQbCTo=";
   };
 
   nativeBuildInputs = [
@@ -45,13 +45,8 @@ buildPythonPackage rec {
     unittestCheckHook
   ] ++ lib.flatten (lib.attrValues passthru.optional-dependencies);
 
-  preCheck = ''
-    # https://github.com/nose-devs/nose2/issues/588
-    substituteInPlace nose2/tests/functional/test_junitxml_plugin.py \
-      --replace "test_skip_reason_in_message" "dont_test_skip_reason_in_message"
-  '';
-
   meta = with lib; {
+    changelog = "https://github.com/nose-devs/nose2/blob/${version}/docs/changelog.rst";
     description = "Test runner for Python";
     homepage = "https://github.com/nose-devs/nose2";
     license = licenses.bsd0;
diff --git a/pkgs/development/python-modules/oelint-parser/default.nix b/pkgs/development/python-modules/oelint-parser/default.nix
index 3b9afa0d6c93..c646e355cc0d 100644
--- a/pkgs/development/python-modules/oelint-parser/default.nix
+++ b/pkgs/development/python-modules/oelint-parser/default.nix
@@ -2,23 +2,27 @@
 , nix-update-script
 , fetchPypi
 , buildPythonPackage
+, deprecated
 , regex
 , pip
 }:
 
 buildPythonPackage rec {
   pname = "oelint-parser";
-  version = "2.13.11";
+  version = "3.0.2";
   format = "setuptools";
 
   src = fetchPypi {
     inherit version;
     pname = "oelint_parser";
-    hash = "sha256-Hr+2S4AGx0W+rrMFdAlN7/OcDTFYivZVYknD/sHWMDs=";
+    hash = "sha256-8Gagk3ijAlmIp0MQwuJ2REIUcoTlvdNcCK9k2RY8DOA=";
   };
 
   buildInputs = [ pip ];
-  propagatedBuildInputs = [ regex ];
+  propagatedBuildInputs = [
+    deprecated
+    regex
+  ];
   pythonImportsCheck = [ "oelint_parser" ];
 
   # Fail to run inside the code the build.
diff --git a/pkgs/development/python-modules/opower/default.nix b/pkgs/development/python-modules/opower/default.nix
index 9c35a3c5491f..6e5225d17337 100644
--- a/pkgs/development/python-modules/opower/default.nix
+++ b/pkgs/development/python-modules/opower/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "opower";
-  version = "0.2.0";
+  version = "0.3.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "tronikos";
     repo = "opower";
     rev = "refs/tags/v${version}";
-    hash = "sha256-OT+QCbHQbL3vCfPuyzxBKqUJ2EtFn+PslrKGlrC6Ip8=";
+    hash = "sha256-YqNHjGJ0BkF8/1LVDqbw9QoJgPgwbA1sIPJUuP4TTJY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/oras/default.nix b/pkgs/development/python-modules/oras/default.nix
index 6dd42eeca3db..c43a92524e01 100644
--- a/pkgs/development/python-modules/oras/default.nix
+++ b/pkgs/development/python-modules/oras/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "oras";
-  version = "0.1.26";
+  version = "0.1.27";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "oras-project";
     repo = "oras-py";
     rev = "refs/tags/${version}";
-    hash = "sha256-t3098ZeAkwLhinyrFwmi7KKrFgZZKPN6qvp3REQNwG8=";
+    hash = "sha256-T2zuflew91UsEjhPKPjNxPBN+C//S1vWvXKVT602EVI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pglast/default.nix b/pkgs/development/python-modules/pglast/default.nix
index f3d86a0cac92..4a3e4794bd77 100644
--- a/pkgs/development/python-modules/pglast/default.nix
+++ b/pkgs/development/python-modules/pglast/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "pglast";
-  version = "6.1";
+  version = "6.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-XdQQsknvZ4Nlmlsh/Lnp0bGjaduqaoH8IKPTOqBWhrU=";
+    hash = "sha256-mGP7o52Wun6AdE2jMAJBmLR10EmN50qzbMzB06BFXMg=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix b/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix
index c40bcae0348e..f40be0758ba5 100644
--- a/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix
+++ b/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "pipenv-poetry-migrate";
-  version = "0.5.2";
+  version = "0.5.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "yhino";
     repo = "pipenv-poetry-migrate";
     rev = "refs/tags/v${version}";
-    hash = "sha256-bTlDDg3iIab75QynAkXU5u4fgTylPeE6OdiQb8hqP8s=";
+    hash = "sha256-Figg5yaPo6QqB4lldmyJZtd/Ar584IyETVJfWZ+gjDE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pmdarima/default.nix b/pkgs/development/python-modules/pmdarima/default.nix
index f1d152decc1f..2ddb03b8afe1 100644
--- a/pkgs/development/python-modules/pmdarima/default.nix
+++ b/pkgs/development/python-modules/pmdarima/default.nix
@@ -43,7 +43,7 @@ buildPythonPackage rec {
   # Make sure we're running the tests for the actually installed
   # package, so that cython's compiled files are available.
   preCheck = ''
-    cd $out/lib/${python.libPrefix}/site-packages
+    cd $out/${python.sitePackages}
   '';
 
   nativeCheckInputs = [ pytestCheckHook ];
diff --git a/pkgs/development/python-modules/posthog/default.nix b/pkgs/development/python-modules/posthog/default.nix
index 8606a9834a25..82bb7ffd57e4 100644
--- a/pkgs/development/python-modules/posthog/default.nix
+++ b/pkgs/development/python-modules/posthog/default.nix
@@ -14,7 +14,7 @@
 }:
 let
   pname = "posthog";
-  version = "3.3.2";
+  version = "3.3.4";
 in
 buildPythonPackage {
   inherit pname version;
@@ -24,7 +24,7 @@ buildPythonPackage {
     owner = "PostHog";
     repo = "posthog-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-7Bs0KDa799qt8sKwmj6oO0L/nWzczI+UXGWNXGv7B7s=";
+    hash = "sha256-xw6mbcEuW3bt5XmJ7ADE34Pm7MEOqJM08NBde8yqeBg=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/preshed/default.nix b/pkgs/development/python-modules/preshed/default.nix
index 557045649425..e0d37c51a2b1 100644
--- a/pkgs/development/python-modules/preshed/default.nix
+++ b/pkgs/development/python-modules/preshed/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "preshed";
-  version = "4.0.0";
+  version = "3.0.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-XisLKgfdGo3uqtZhIBmEXGAu4kkH9pNuqvF6q9VuVEw=";
+    hash = "sha256-chhjxSRP/NJlGtCSiVGix8d7EC9OEaJRrYXTfudiFmA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/publicsuffixlist/default.nix b/pkgs/development/python-modules/publicsuffixlist/default.nix
index 2b05786997ae..d456ac3fd96d 100644
--- a/pkgs/development/python-modules/publicsuffixlist/default.nix
+++ b/pkgs/development/python-modules/publicsuffixlist/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "publicsuffixlist";
-  version = "0.10.0.20240125";
+  version = "0.10.0.20240201";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-lxyUgACsRULzQLNyU2TFrLdRzdSbQzvECTRaYQP8O04=";
+    hash = "sha256-8IAfr55UWsstyyoFr5KJWAtU1LnAguEAwUSWts/iK1o=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/py-sonic/default.nix b/pkgs/development/python-modules/py-sonic/default.nix
index ec0da2c3ab3b..826c23120ed9 100644
--- a/pkgs/development/python-modules/py-sonic/default.nix
+++ b/pkgs/development/python-modules/py-sonic/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "py-sonic";
-  version = "1.0.0";
+  version = "1.0.1";
   format = "setuptools";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-9ho0F5kf74pCsLujwLt+pU+Ikxu70/kk+WP7lnD7CiE=";
+    hash = "sha256-DU1T86T0jQ6ptkWdjuV70VC8MFx/rK5aQFYjbK6F2Hk=";
   };
 
   # package has no tests
diff --git a/pkgs/development/python-modules/pycaption/default.nix b/pkgs/development/python-modules/pycaption/default.nix
index 7df7ed1f70ad..cfe2838db9ff 100644
--- a/pkgs/development/python-modules/pycaption/default.nix
+++ b/pkgs/development/python-modules/pycaption/default.nix
@@ -13,17 +13,17 @@
 
 buildPythonPackage rec {
   pname = "pycaption";
-  version = "2.2.1";
+  version = "2.2.2";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.8";
 
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "pbs";
     repo = "pycaption";
-    rev = version;
-    hash = "sha256-IPCU9MsBY+Vsk6SrR9+3j4Izfhw5LeUrK0KUa3seSs4=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-6c16S77K1UC7+rz8tF0tLlBspienhDbgSXhdJzkQZII=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pyemvue/default.nix b/pkgs/development/python-modules/pyemvue/default.nix
new file mode 100644
index 000000000000..d8502aaf4333
--- /dev/null
+++ b/pkgs/development/python-modules/pyemvue/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+
+# build-system
+, hatchling
+
+# propagated modules
+, requests
+, python-dateutil
+, pycognito
+, typing-extensions
+}:
+
+buildPythonPackage rec {
+  pname = "pyemvue";
+  version = "0.18.0";
+  pyproject = true;
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-s1Uuoiog3OkqOb6PSTqh79vgyLDGFIuZMCyQKH+qG3g=";
+  };
+
+  nativeBuildInputs = [
+    hatchling
+  ];
+
+  propagatedBuildInputs = [
+    requests
+    python-dateutil
+    pycognito
+    typing-extensions
+  ];
+
+  pythonImportsCheck = [ "pyemvue" ];
+
+  # has no tests
+  doCheck = false;
+
+  meta = with lib; {
+    changelog = "https://github.com/magico13/PyEmVue/releases/tag/v${version}";
+    description = "A Python library for reading data from the Emporia Vue energy monitoring system";
+    homepage = "https://github.com/magico13/PyEmVue";
+    license = licenses.mit;
+    maintainers = with maintainers; [ presto8 ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyenphase/default.nix b/pkgs/development/python-modules/pyenphase/default.nix
index 02c437298efc..4826806c19f1 100644
--- a/pkgs/development/python-modules/pyenphase/default.nix
+++ b/pkgs/development/python-modules/pyenphase/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "pyenphase";
-  version = "1.18.0";
+  version = "1.19.0";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "pyenphase";
     repo = "pyenphase";
     rev = "refs/tags/v${version}";
-    hash = "sha256-lnxHWEQ9nVWT7dK0Vz7cCN/ur9C/RfzJDh6AYpFHJds=";
+    hash = "sha256-Wj2CkOvH5mS+DaIcbrqHjK+0mG3gfyF5M9tFImeJ/ko=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/pyfireservicerota/default.nix b/pkgs/development/python-modules/pyfireservicerota/default.nix
index 7622f858959b..fcdfdd0442d4 100644
--- a/pkgs/development/python-modules/pyfireservicerota/default.nix
+++ b/pkgs/development/python-modules/pyfireservicerota/default.nix
@@ -1,6 +1,9 @@
 { lib
 , buildPythonPackage
+, pythonOlder
 , fetchPypi
+, fetchpatch2
+, pdm-backend
 , pytz
 , oauthlib
 , requests
@@ -9,14 +12,27 @@
 
 buildPythonPackage rec {
   pname = "pyfireservicerota";
-  version = "0.0.43";
-  format = "setuptools";
+  version = "0.0.44";
+  pyproject = true;
+
+  disabled = pythonOlder "3.10";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-3+QK1BVuWYii0oYT4xXMOYJZmVKrB4EmqE0EkdFlZvE=";
+    hash = "sha256-OknGX4xP+AHXRuhizbeTVAfiOX0uRGzAly7FJ1vopDI=";
   };
 
+  postPatch = ''
+    # https://github.com/cyberjunky/python-fireservicerota/pull/1
+    substituteInPlace pyproject.toml \
+      --replace-fail '"aiohttp",' '"requests",' \
+      --replace-fail '"aiohttp_retry",' ""
+  '';
+
+  nativeBuildInputs = [
+    pdm-backend
+  ];
+
   propagatedBuildInputs = [
     pytz
     oauthlib
diff --git a/pkgs/development/python-modules/pyformlang/default.nix b/pkgs/development/python-modules/pyformlang/default.nix
index d4a055d459cd..63bf98a0ea5f 100644
--- a/pkgs/development/python-modules/pyformlang/default.nix
+++ b/pkgs/development/python-modules/pyformlang/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "pyformlang";
-  version = "1.0.4";
+  version = "1.0.6";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ysX6c8q26bcQyq6GgKBKxTdp00j+4ypb3mgM2cqCmBs=";
+    hash = "sha256-LHQM+Vy8YVfTtpWaveYgBlp74AnS/IF3Y1EbgwVku7I=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pygit2/default.nix b/pkgs/development/python-modules/pygit2/default.nix
index 50211bda6400..0a2e73c3c18e 100644
--- a/pkgs/development/python-modules/pygit2/default.nix
+++ b/pkgs/development/python-modules/pygit2/default.nix
@@ -10,24 +10,29 @@
 , pycparser
 , pytestCheckHook
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "pygit2";
-  version = "1.13.3";
-  format = "setuptools";
+  version = "1.14.0";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.9";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-AlfGJgEeSvuZvbIIdUQ/cG+EIB1MkmN/AiFbmOrBPe0=";
+    hash = "sha256-9SntlmDtv5tiXMrn5RCY73NmLmFJZgkAl3LUYnqCaqg=";
   };
 
   preConfigure = lib.optionalString stdenv.isDarwin ''
     export DYLD_LIBRARY_PATH="${libgit2}/lib"
   '';
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   buildInputs = [
     libgit2
   ];
@@ -65,6 +70,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "A set of Python bindings to the libgit2 shared library";
     homepage = "https://github.com/libgit2/pygit2";
+    changelog = "https://github.com/libgit2/pygit2/blob/v${version}/CHANGELOG.md";
     license = licenses.gpl2Only;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/development/python-modules/pygls/default.nix b/pkgs/development/python-modules/pygls/default.nix
index 9903e104034c..9c4d50843e22 100644
--- a/pkgs/development/python-modules/pygls/default.nix
+++ b/pkgs/development/python-modules/pygls/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "pygls";
-  version = "1.2.1";
+  version = "1.3.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "openlawlibrary";
     repo = "pygls";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ARez9fs50kScfMp/W/aFIOcJonpFrcfyrzJuVwou7fk=";
+    hash = "sha256-6+SMlBTi+jw+bAUYqbaxXT5QygZFj4FeeEp6bch8M1s=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/pygmo/default.nix b/pkgs/development/python-modules/pygmo/default.nix
index 0ce6a2fd3f99..d311df0a4530 100644
--- a/pkgs/development/python-modules/pygmo/default.nix
+++ b/pkgs/development/python-modules/pygmo/default.nix
@@ -28,7 +28,7 @@ toPythonModule (stdenv.mkDerivation rec {
   };
 
   cmakeFlags = [
-    "-DPYGMO_INSTALL_PATH=${placeholder "out"}/lib/${python.libPrefix}/site-packages"
+    "-DPYGMO_INSTALL_PATH=${placeholder "out"}/${python.sitePackages}"
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pygmt/default.nix b/pkgs/development/python-modules/pygmt/default.nix
index 31b9fdd7c3a1..c455bbcfab16 100644
--- a/pkgs/development/python-modules/pygmt/default.nix
+++ b/pkgs/development/python-modules/pygmt/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "pygmt";
-  version = "0.10.0";
+  version = "0.11.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "GenericMappingTools";
     repo = "pygmt";
     rev = "refs/tags/v${version}";
-    hash = "sha256-+bkjqHjJIwk44u226q6xqeGmwMWleyc4lRfMZdDjVBA=";
+    hash = "sha256-DbewB/lP44bpNSQ4ht7n0coS2Ml7qmEU4CP91p5YtZg=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/pylgnetcast/default.nix b/pkgs/development/python-modules/pylgnetcast/default.nix
index 1e18c9f93aea..f4811bf02dfc 100644
--- a/pkgs/development/python-modules/pylgnetcast/default.nix
+++ b/pkgs/development/python-modules/pylgnetcast/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pylgnetcast";
-  version = "0.3.8";
+  version = "0.3.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "Drafteed";
     repo = "python-lgnetcast";
     rev = "refs/tags/v${version}";
-    hash = "sha256-UxZ4XM7n0Ryd4D967fXPTA4sqTrZwS8Tj/Q8kNGdk8Q=";
+    hash = "sha256-5lzLknuGLQryLCc4YQJn8AGuWTiSM90+8UTQ/WYfASM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pylutron-caseta/default.nix b/pkgs/development/python-modules/pylutron-caseta/default.nix
index e069e902687f..c95a36aa8eca 100644
--- a/pkgs/development/python-modules/pylutron-caseta/default.nix
+++ b/pkgs/development/python-modules/pylutron-caseta/default.nix
@@ -1,37 +1,50 @@
 { lib
 , async-timeout
 , buildPythonPackage
+, click
 , cryptography
 , fetchFromGitHub
+, hatchling
 , pytest-asyncio
 , pytest-timeout
 , pytestCheckHook
 , pythonOlder
-, setuptools
+, xdg
+, zeroconf
 }:
 
 buildPythonPackage rec {
   pname = "pylutron-caseta";
-  version = "0.18.3";
-  format = "pyproject";
+  version = "0.19.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "gurumitts";
-    repo = pname;
+    repo = "pylutron-caseta";
     rev = "refs/tags/v${version}";
-    hash = "sha256-tjmMu7LUne+hLLTXGqHhci9/PZiuQ10mQaARvL2sdIM=";
+    hash = "sha256-/xTHtzXEFGL2/oP1oVxJj7GO3fSZ5CwjXDdp6OLhlzM=";
   };
 
   nativeBuildInputs = [
-    setuptools
+    hatchling
   ];
 
   propagatedBuildInputs = [
     cryptography
+  ] ++ lib.optionals (pythonOlder "3.11") [
+    async-timeout
   ];
 
+  passthru.optional-dependencies = {
+    cli = [
+      click
+      xdg
+      zeroconf
+    ];
+  };
+
   nativeCheckInputs = [
     pytest-asyncio
     pytest-timeout
diff --git a/pkgs/development/python-modules/pylutron/default.nix b/pkgs/development/python-modules/pylutron/default.nix
index b55696d840f9..f217b46179f9 100644
--- a/pkgs/development/python-modules/pylutron/default.nix
+++ b/pkgs/development/python-modules/pylutron/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "pylutron";
-  version = "0.2.10";
+  version = "0.2.11";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-DKwjBQXC7O/8bFxq5shJJxRV3HYgBeS7tJXg4m3vQMY=";
+    hash = "sha256-9M7bCZD3zGZM62ID0yB/neKkF+6UW8x5m2y5vj/mYes=";
   };
 
   # Project has no tests
diff --git a/pkgs/development/python-modules/pymatting/01-kdtree-signature.patch b/pkgs/development/python-modules/pymatting/01-kdtree-signature.patch
deleted file mode 100644
index 2193b260aea1..000000000000
--- a/pkgs/development/python-modules/pymatting/01-kdtree-signature.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/tests/test_kdtree.py b/tests/test_kdtree.py
-index 0110083..049fa07 100644
---- a/tests/test_kdtree.py
-+++ b/tests/test_kdtree.py
-@@ -23,7 +23,7 @@ def run_kdtree():
- 
-     tree = cKDTree(data_points)
- 
--    distances2, indices2 = tree.query(query_points, k=k, n_jobs=-1)
-+    distances2, indices2 = tree.query(query_points, k=k)
- 
-     t2 = time.perf_counter()
- 
diff --git a/pkgs/development/python-modules/pymatting/default.nix b/pkgs/development/python-modules/pymatting/default.nix
index 5e3b39dd523a..371a4a03c2f3 100644
--- a/pkgs/development/python-modules/pymatting/default.nix
+++ b/pkgs/development/python-modules/pymatting/default.nix
@@ -4,14 +4,15 @@
 , numba
 , numpy
 , pillow
-, scipy
 , pytestCheckHook
-,
+, scipy
+, setuptools
 }:
+
 buildPythonPackage rec {
   pname = "pymatting";
   version = "1.1.10";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "pymatting";
@@ -20,7 +21,9 @@ buildPythonPackage rec {
     hash = "sha256-wHCTqcBvVN/pTXH3iW57DPpMEsnehutRQB5NaugS6Zs=";
   };
 
-  patches = [ ./01-kdtree-signature.patch ];
+  nativeBuildInputs = [
+    setuptools
+  ];
 
   propagatedBuildInputs = [
     numba
@@ -29,12 +32,14 @@ buildPythonPackage rec {
     scipy
   ];
 
-  pythonImportsCheck = [ "pymatting" ];
-
   nativeCheckInputs = [
     pytestCheckHook
   ];
 
+  pythonImportsCheck = [
+    "pymatting"
+  ];
+
   disabledTests = [
     # no access to input data set
     # see: https://github.com/pymatting/pymatting/blob/master/tests/download_images.py
diff --git a/pkgs/development/python-modules/pysnmplib/default.nix b/pkgs/development/python-modules/pysnmplib/default.nix
index 587bb4762716..abcbe70562de 100644
--- a/pkgs/development/python-modules/pysnmplib/default.nix
+++ b/pkgs/development/python-modules/pysnmplib/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "pysnmplib";
-  version = "5.0.23";
+  version = "5.0.24";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "pysnmp";
     repo = "pysnmp";
     rev = "refs/tags/v${version}";
-    hash = "sha256-1h87fqaWMJN25SOD0xOkP3PFm1GPK99sT0o6ILCFVUI=";
+    hash = "sha256-AtQqXiy943cYhHDsyz9Yk5uA4xK7Q4p21CT3X3zYzrQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pytedee-async/default.nix b/pkgs/development/python-modules/pytedee-async/default.nix
index 6269df577501..f4ce2c7bcd89 100644
--- a/pkgs/development/python-modules/pytedee-async/default.nix
+++ b/pkgs/development/python-modules/pytedee-async/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "pytedee-async";
-  version = "0.2.12";
+  version = "0.2.13";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "zweckj";
     repo = "pytedee_async";
     rev = "refs/tags/v${version}";
-    hash = "sha256-eepN5Urr9fp1780iy3Z4sot+hXvMCxMGodYBdRdDj9Y=";
+    hash = "sha256-3W+eqkniDMoDKeute5w1QyklOc/aren/Q8txBEI/4ys=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pytest-django/default.nix b/pkgs/development/python-modules/pytest-django/default.nix
index a7f2e38f3362..531ad08dec46 100644
--- a/pkgs/development/python-modules/pytest-django/default.nix
+++ b/pkgs/development/python-modules/pytest-django/default.nix
@@ -49,6 +49,8 @@ buildPythonPackage rec {
     "test_settings_restored"
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "py.test plugin for testing of Django applications";
     homepage = "https://pytest-django.readthedocs.org/en/latest/";
diff --git a/pkgs/development/python-modules/python-docs-theme/default.nix b/pkgs/development/python-modules/python-docs-theme/default.nix
index 464697c35bfa..270df8b2accf 100644
--- a/pkgs/development/python-modules/python-docs-theme/default.nix
+++ b/pkgs/development/python-modules/python-docs-theme/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "python-docs-theme";
-  version = "2023.9";
+  version = "2024.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "python";
     repo = "python-docs-theme";
     rev = "refs/tags/${version}";
-    hash = "sha256-XVwMEfprTNdNnaW38HMCAu4CswdVjBXYtNWBgqXfbno=";
+    hash = "sha256-nU8KQu89/xWvR6xoIOKsGrOqDjFhA3TgHROHfbAqCRU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/python-kasa/default.nix b/pkgs/development/python-modules/python-kasa/default.nix
index c61fcfac480b..fbba1227f8d0 100644
--- a/pkgs/development/python-modules/python-kasa/default.nix
+++ b/pkgs/development/python-modules/python-kasa/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "python-kasa";
-  version = "0.6.1";
+  version = "0.6.2";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "python-kasa";
     repo = "python-kasa";
     rev = "refs/tags/${version}";
-    hash = "sha256-kMhmnIwdVix9DgijTcNf5fsm4jiqygxjOvgGNOGN4O8=";
+    hash = "sha256-ka7fVveqX61XGmX43S/eB939dfqoEDh8eX1cw7hGE7U=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pytrafikverket/default.nix b/pkgs/development/python-modules/pytrafikverket/default.nix
index 9a60920dd7b8..d880602a5123 100644
--- a/pkgs/development/python-modules/pytrafikverket/default.nix
+++ b/pkgs/development/python-modules/pytrafikverket/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "pytrafikverket";
-  version = "0.3.9.2";
+  version = "0.3.10";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-NxxuyLnzJ8T2jaQ761O943rpBbNwp/F4PygyQULkXzw=";
+    hash = "sha256-B3K9wDFj7uSgs6BsJUnD6r2JVcH7u7UrbVXUTMGqmQE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pywfa/default.nix b/pkgs/development/python-modules/pywfa/default.nix
index 529417db9896..2aca36a07da7 100644
--- a/pkgs/development/python-modules/pywfa/default.nix
+++ b/pkgs/development/python-modules/pywfa/default.nix
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "kcleal";
     repo = "pywfa";
     rev = "refs/tags/v${version}";
-    hash = "sha256-oeVXK9uyH4E98tApKrA7dXifQYb41KuDTAZ40XgAaF8=";
+    hash = "sha256-TeJ7Jq4LR+I1+zeMeBtHZa9dR+CRJJG5sT99tB227P8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/qcodes/default.nix b/pkgs/development/python-modules/qcodes/default.nix
index 779e7b390b21..b8b7ca6a5eb9 100644
--- a/pkgs/development/python-modules/qcodes/default.nix
+++ b/pkgs/development/python-modules/qcodes/default.nix
@@ -48,7 +48,7 @@
 
 buildPythonPackage rec {
   pname = "qcodes";
-  version = "0.42.1";
+  version = "0.44.1";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -57,7 +57,7 @@ buildPythonPackage rec {
     owner = "QCoDeS";
     repo = "Qcodes";
     rev = "refs/tags/v${version}";
-    hash = "sha256-oNQLIL5L3gtFS6yxqgLDI1s4s9UYqxGc8ASqHuZv6Rk=";
+    hash = "sha256-AggAVq/yfJUZRwoQb29QoIbVIAdV3solKCjivqucLZk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/qdrant-client/default.nix b/pkgs/development/python-modules/qdrant-client/default.nix
index 4281248fe273..8913cc5d64db 100644
--- a/pkgs/development/python-modules/qdrant-client/default.nix
+++ b/pkgs/development/python-modules/qdrant-client/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "qdrant-client";
-  version = "1.7.1";
+  version = "1.7.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "qdrant";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-HQJgiy0tBOdXveNzrJcWcnGZAp9eHu3qRjgONj4aTQg=";
+    hash = "sha256-nGZV8ORThVxH+Q1xfpqUwPGw6LUoTZXj4KgfTLCvUEc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/rdkit/default.nix b/pkgs/development/python-modules/rdkit/default.nix
index 7d0632ebc836..8a29bc837cfa 100644
--- a/pkgs/development/python-modules/rdkit/default.nix
+++ b/pkgs/development/python-modules/rdkit/default.nix
@@ -42,7 +42,7 @@ let
 in
 buildPythonPackage rec {
   pname = "rdkit";
-  version = "2023.09.3";
+  version = "2023.09.4";
   pyproject = false;
 
   src =
@@ -53,7 +53,7 @@ buildPythonPackage rec {
       owner = pname;
       repo = pname;
       rev = "Release_${versionTag}";
-      hash = "sha256-bewOdmpnm6cArD5iaMKNqT8z4GUIpih+JzJ+wdo/lrI=";
+      hash = "sha256-yPpt7F3w17tZEe+HECODZ7p27QidNt1sd5f/T2V87NE=";
     };
 
   unpackPhase = ''
@@ -141,7 +141,7 @@ buildPythonPackage rec {
   checkPhase = ''
     export QT_QPA_PLATFORM='offscreen'
     export RDBASE=$(realpath ..)
-    export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
+    export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
     (cd $RDBASE/rdkit/Chem && python $RDBASE/rdkit/TestRunner.py test_list.py)
   '';
 
diff --git a/pkgs/development/python-modules/recipe-scrapers/default.nix b/pkgs/development/python-modules/recipe-scrapers/default.nix
index 9ff74c48044b..30d0efc83432 100644
--- a/pkgs/development/python-modules/recipe-scrapers/default.nix
+++ b/pkgs/development/python-modules/recipe-scrapers/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "recipe-scrapers";
-  version = "14.53.0";
+  version = "14.54.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "hhursev";
     repo = "recipe-scrapers";
     rev = "refs/tags/${version}";
-    hash = "sha256-uYUzn3JlsZmzzbk740aD3PW3OuGqdsAfU7HlYX5kPrY=";
+    hash = "sha256-Q7ubT7SBHNxyvfqFhDmBjnW7ssoXBsMZR+eYg5CntHY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/reconplogger/default.nix b/pkgs/development/python-modules/reconplogger/default.nix
index e6791dddb1d6..29f3c8b649aa 100644
--- a/pkgs/development/python-modules/reconplogger/default.nix
+++ b/pkgs/development/python-modules/reconplogger/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "reconplogger";
-  version = "4.13.0";
+  version = "4.15.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "omni-us";
     repo = "reconplogger";
     rev = "refs/tags/v${version}";
-    hash = "sha256-eqo26u99nTO/8kgG9nqeVArWJiwP4wqkcisAju8vOPs=";
+    hash = "sha256-0+YOrMqyDK6uAni2h5b6P850veIkUiifX6aHzCnRHD0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/recursive-pth-loader/default.nix b/pkgs/development/python-modules/recursive-pth-loader/default.nix
index 499ad3c23d07..e42988eeff9a 100644
--- a/pkgs/development/python-modules/recursive-pth-loader/default.nix
+++ b/pkgs/development/python-modules/recursive-pth-loader/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
 
   installPhase =
     ''
-      dst=$out/lib/${python.libPrefix}/site-packages
+      dst=$out/${python.sitePackages}
       mkdir -p $dst
       cp sitecustomize.* $dst/
     '';
diff --git a/pkgs/development/python-modules/regenmaschine/default.nix b/pkgs/development/python-modules/regenmaschine/default.nix
index e3fb2889470e..d76c06fe5d34 100644
--- a/pkgs/development/python-modules/regenmaschine/default.nix
+++ b/pkgs/development/python-modules/regenmaschine/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "regenmaschine";
-  version = "2023.12.0";
+  version = "2024.01.0";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "bachya";
     repo = "regenmaschine";
     rev = "refs/tags/${version}";
-    hash = "sha256-9VBqLmbWJCrfDw9T1qmE9KkdlS+MDnvoG8O9dPCuJDs=";
+    hash = "sha256-Vd8ACF2AXbT7FE/b0koIPUrNd9DgmjgS5unBuRiq784=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/reptor/default.nix b/pkgs/development/python-modules/reptor/default.nix
index 94d3058a8a15..1f35854766f0 100644
--- a/pkgs/development/python-modules/reptor/default.nix
+++ b/pkgs/development/python-modules/reptor/default.nix
@@ -32,7 +32,7 @@
 
 buildPythonPackage rec {
   pname = "reptor";
-  version = "0.8";
+  version = "0.9";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -41,7 +41,7 @@ buildPythonPackage rec {
     owner = "Syslifters";
     repo = "reptor";
     rev = "refs/tags/${version}";
-    hash = "sha256-YnDAjbj3TTr+WajuW6Dq3f+fjeJxrWk7VNWKhh9O7Zw=";
+    hash = "sha256-CjTedIl7ZkSFfKKhHmCadTd7zdz3gP7Q4uCscv5An38=";
   };
 
   pythonRelaxDeps = true;
diff --git a/pkgs/development/python-modules/requests-pkcs12/default.nix b/pkgs/development/python-modules/requests-pkcs12/default.nix
index 4c939064d759..87f20922a712 100644
--- a/pkgs/development/python-modules/requests-pkcs12/default.nix
+++ b/pkgs/development/python-modules/requests-pkcs12/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "requests-pkcs12";
-  version = "1.22";
+  version = "1.24";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "m-click";
     repo = "requests_pkcs12";
     rev = version;
-    hash = "sha256-YMFeWbPTwxP/+lYojXEbJf87FNHL6QrzOdOKF5JERSE=";
+    hash = "sha256-JLFUdg7kbjhlpGgrQ29U1TRTKhjDlvMGc/FRE+awfLc=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/rich-pixels/default.nix b/pkgs/development/python-modules/rich-pixels/default.nix
index a086065725b5..7b77e59b6c9f 100644
--- a/pkgs/development/python-modules/rich-pixels/default.nix
+++ b/pkgs/development/python-modules/rich-pixels/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch
 , poetry-core
 , pytestCheckHook
 , syrupy
@@ -21,6 +22,14 @@ buildPythonPackage rec {
     hash = "sha256-fbpnHEfBPWLSYhgETqKbdmmzt7Lu/4oKgetjgNvv04c=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "fix-version.patch";
+      url = "https://github.com/darrenburns/rich-pixels/commit/ff1cc3fef789321831f29e9bf282ae6b337eddb2.patch";
+      hash = "sha256-58ZHBNg1RCuOfuE034qF1SbAgoiWMNlSG3c5pCSLUyI=";
+    })
+  ];
+
   nativeBuildInputs = [
     poetry-core
     pythonRelaxDepsHook
diff --git a/pkgs/development/python-modules/ring-doorbell/default.nix b/pkgs/development/python-modules/ring-doorbell/default.nix
index 8065fea978bf..7b0695eb928e 100644
--- a/pkgs/development/python-modules/ring-doorbell/default.nix
+++ b/pkgs/development/python-modules/ring-doorbell/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "ring-doorbell";
-  version = "0.8.5";
+  version = "0.8.6";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "ring_doorbell";
     inherit version;
-    hash = "sha256-WYoElfkq0/uK3GPcIwDUP9w8l5zN9G2X/KDJbJNse9s=";
+    hash = "sha256-sjGN1I/SeI5POkACYBcUA76Fyk7XJln7A6ofg11ygrw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/robotframework-databaselibrary/default.nix b/pkgs/development/python-modules/robotframework-databaselibrary/default.nix
index d24bcf5bfc7a..39b45d5816bd 100644
--- a/pkgs/development/python-modules/robotframework-databaselibrary/default.nix
+++ b/pkgs/development/python-modules/robotframework-databaselibrary/default.nix
@@ -1,8 +1,10 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , setuptools
 , robotframework
+, robotframework-excellib
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
@@ -10,9 +12,11 @@ buildPythonPackage rec {
   version = "1.4.1";
   pyproject = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-/n4+xA/eLrcVEwlWyLQLrkX5waYaJKRkphwT22b7hTU=";
+  src = fetchFromGitHub {
+    owner = "MarketSquare";
+    repo = "Robotframework-Database-Library";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-BCVXmlrYOaG+Dh67OytUfQnJ9Ak3MtHR3swOXdAN/HU=";
   };
 
   nativeBuildInputs = [
@@ -22,14 +26,18 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     robotframework
+    robotframework-excellib
   ];
 
-  # unit tests are impure
-  doCheck = false;
+  pythonImportsCheck = [ "DatabaseLibrary" ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
 
   meta = with lib; {
     description = "Database Library contains utilities meant for Robot Framework";
-    homepage = "https://github.com/franz-see/Robotframework-Database-Library";
+    homepage = "https://github.com/MarketSquare/Robotframework-Database-Library";
     license = licenses.asl20;
     maintainers = with maintainers; [ talkara ];
   };
diff --git a/pkgs/development/python-modules/robotframework-excellib/default.nix b/pkgs/development/python-modules/robotframework-excellib/default.nix
new file mode 100644
index 000000000000..550cc45e8ca3
--- /dev/null
+++ b/pkgs/development/python-modules/robotframework-excellib/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools
+, openpyxl
+, robotframework
+}:
+
+buildPythonPackage rec {
+  pname = "robotframework-excellib";
+  version = "2.0.1";
+  pyproject = true;
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-ZzAwlYM8DgWD1hfWRnY8u2RnZc3V368kgigBApeDZYg=";
+  };
+
+  nativeBuildInputs = [
+    setuptools
+  ];
+
+  propagatedBuildInputs = [
+    openpyxl
+    robotframework
+  ];
+
+  pythonImportsCheck = [ "ExcelLibrary" ];
+
+  # upstream has no tests
+  doCheck = false;
+
+  meta = {
+    description = "Robot Framework library for working with Excel documents";
+    homepage = "https://github.com/peterservice-rnd/robotframework-excellib";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ dotlambda ];
+  };
+}
diff --git a/pkgs/development/python-modules/robotframework-seleniumlibrary/default.nix b/pkgs/development/python-modules/robotframework-seleniumlibrary/default.nix
index d014d0441975..961d967b31e6 100644
--- a/pkgs/development/python-modules/robotframework-seleniumlibrary/default.nix
+++ b/pkgs/development/python-modules/robotframework-seleniumlibrary/default.nix
@@ -41,24 +41,9 @@ buildPythonPackage rec {
     robotstatuschecker
   ];
 
-  disabledTestPaths = [
-    # https://github.com/robotframework/SeleniumLibrary/issues/1804
-    "utest/test/keywords/test_webdrivercache.py"
-  ];
-
-  disabledTests = [
-    "test_create_opera_executable_path_not_set"
-    "test_create_opera_executable_path_set"
-    "test_create_opera_with_options"
-    "test_create_opera_with_service_log_path_real_path"
-    "test_get_executable_path"
-    "test_get_ff_profile_instance_FirefoxProfile"
-    "test_has_options"
-    "test_importer"
-    "test_log_file_with_index_exist"
-    "test_opera"
-    "test_single_method"
-  ];
+  preCheck = ''
+    mkdir utest/output_dir
+  '';
 
   meta = with lib; {
     changelog = "https://github.com/robotframework/SeleniumLibrary/blob/${src.rev}/docs/SeleniumLibrary-${version}.rst";
diff --git a/pkgs/development/python-modules/robotframework/default.nix b/pkgs/development/python-modules/robotframework/default.nix
index 31bd894f5c01..f87fe2bdd37a 100644
--- a/pkgs/development/python-modules/robotframework/default.nix
+++ b/pkgs/development/python-modules/robotframework/default.nix
@@ -1,24 +1,40 @@
-{ lib, fetchFromGitHub, buildPythonPackage, jsonschema }:
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, setuptools
+, jsonschema
+, python
+}:
 
 buildPythonPackage rec {
   pname = "robotframework";
-  version = "6.1.1";
-  format = "setuptools";
+  version = "7.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
+    owner = "robotframework";
+    repo = "robotframework";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vtP0TVkCMrm0CRXlpZvVTBf7yd8+3p+nRArMWyQUn4k=";
+    hash = "sha256-IyOm2MTHj2rOew/IkyGIfI4XZSFU88+Tx8KHKIRT2G4=";
   };
 
-  nativeCheckInputs = [ jsonschema ];
+  nativeBuildInputs = [
+    setuptools
+  ];
+
+  nativeCheckInputs = [
+    jsonschema
+  ];
 
   checkPhase = ''
-    python3 utest/run.py
+    ${python.interpreter} utest/run.py
   '';
 
   meta = with lib; {
+    changelog = "https://github.com/robotframework/robotframework/blob/master/doc/releasenotes/rf-${version}.rst";
     description = "Generic test automation framework";
     homepage = "https://robotframework.org/";
     license = licenses.asl20;
diff --git a/pkgs/development/python-modules/robotstatuschecker/default.nix b/pkgs/development/python-modules/robotstatuschecker/default.nix
index ef338ef0d341..fb0d137c9b06 100644
--- a/pkgs/development/python-modules/robotstatuschecker/default.nix
+++ b/pkgs/development/python-modules/robotstatuschecker/default.nix
@@ -1,9 +1,15 @@
-{ lib, buildPythonPackage, fetchFromGitHub, python, robotframework }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools
+, robotframework
+, python
+}:
 
 buildPythonPackage rec {
-  version = "3.0.1";
-  format = "setuptools";
   pname = "robotstatuschecker";
+  version = "3.0.1";
+  pyproject = true;
 
   # no tests included in PyPI tarball
   src = fetchFromGitHub {
@@ -13,10 +19,24 @@ buildPythonPackage rec {
     hash = "sha256-yW6353gDwo/IzoWOB8oelaS6IUbvTtwwDT05yD7w6UA=";
   };
 
+  postPatch = ''
+    # https://github.com/robotframework/statuschecker/issues/46
+    substituteInPlace test/tests.robot \
+      --replace-fail BuiltIn.Log Log
+  '';
+
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [ robotframework ];
 
   checkPhase = ''
+    runHook preCheck
+
     ${python.interpreter} test/run.py
+
+    runHook postCheck
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/rokuecp/default.nix b/pkgs/development/python-modules/rokuecp/default.nix
index 34a5c17a4772..00f710060cc7 100644
--- a/pkgs/development/python-modules/rokuecp/default.nix
+++ b/pkgs/development/python-modules/rokuecp/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "rokuecp";
-  version = "0.18.2";
+  version = "0.19.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "ctalkington";
     repo = "python-rokuecp";
     rev = "refs/tags/${version}";
-    hash = "sha256-fgnR3TZh+cHvC8qJnvwfrrtxCdEr89Uw8ciACzaQPYE=";
+    hash = "sha256-e7BY0Y2SdAtECKqOCUZfq7PcCR2bhQ4lESQD9jTaqpI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/safetensors/default.nix b/pkgs/development/python-modules/safetensors/default.nix
index 976d6b9b3fa8..0aa729c20e54 100644
--- a/pkgs/development/python-modules/safetensors/default.nix
+++ b/pkgs/development/python-modules/safetensors/default.nix
@@ -16,22 +16,22 @@
 
 buildPythonPackage rec {
   pname = "safetensors";
-  version = "0.3.3";
-  format = "pyproject";
+  version = "0.4.2";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "huggingface";
-    repo = pname;
+    repo = "safetensors";
     rev = "refs/tags/v${version}";
-    hash = "sha256-U+indMoLFN6vMZkJTWFG08lsdXuK5gOfgaHmUVl6DPk=";
+    hash = "sha256-hdPUI8k7CCQwt2C/AsjUHRmAL6ob+yCN97KkWtqOQL8=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     sourceRoot = "${src.name}/bindings/python";
-    hash = "sha256-MhRs9tFCmVZI5O0EVRUbo4ZnUVRQ0EfQTU+E1K+qKZI=";
+    hash = "sha256-7n9aYlha6IaPsZ2zMfD5EIkrk8ENwMBwj41s6QU7ml0=";
   };
 
   sourceRoot = "${src.name}/bindings/python";
@@ -41,6 +41,7 @@ buildPythonPackage rec {
     cargo
     rustc
     rustPlatform.cargoSetupHook
+    rustPlatform.maturinBuildHook
   ];
 
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
diff --git a/pkgs/development/python-modules/sagemaker/default.nix b/pkgs/development/python-modules/sagemaker/default.nix
index f3bba5c1a12e..0710b82176e8 100644
--- a/pkgs/development/python-modules/sagemaker/default.nix
+++ b/pkgs/development/python-modules/sagemaker/default.nix
@@ -26,7 +26,7 @@
 
 buildPythonPackage rec {
   pname = "sagemaker";
-  version = "2.204.0";
+  version = "2.206.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -35,7 +35,7 @@ buildPythonPackage rec {
     owner = "aws";
     repo = "sagemaker-python-sdk";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Bku13l4CPz1SYNpqnnteE97jX+X9sv6ea9X2tiZzeXY=";
+    hash = "sha256-aKLv8bXH1lq6yBeFsR2odtTo4sbaHlSyeSUnKdIzW9Q=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/scmrepo/default.nix b/pkgs/development/python-modules/scmrepo/default.nix
index 6faf74e51aa1..611949ae6515 100644
--- a/pkgs/development/python-modules/scmrepo/default.nix
+++ b/pkgs/development/python-modules/scmrepo/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "scmrepo";
-  version = "2.0.4";
+  version = "2.1.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "iterative";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-gBGfL6Xet7ASdwRTFJ5nHpyeXi/pqlrL9o5nC3m48hk=";
+    hash = "sha256-KG7Y+1qqsgDwgRYsb3XbZnF6FduHJCAEizfuugBi0Go=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/scs/default.nix b/pkgs/development/python-modules/scs/default.nix
index 5e95bed4cbdb..c1ca83ed4ba1 100644
--- a/pkgs/development/python-modules/scs/default.nix
+++ b/pkgs/development/python-modules/scs/default.nix
@@ -41,6 +41,13 @@ buildPythonPackage rec {
       url = "https://github.com/bodono/scs-python/commit/dd17e2e5282ebe85f2df8a7c6b25cfdeb894970d.patch";
       hash = "sha256-vSeSJeeu5Wx3RXPyB39YTo0RU8HtAojrUw85Q76/QzA=";
     })
+    # fix test_solve_random_cone_prob on linux after scipy 1.12 update
+    # https://github.com/bodono/scs-python/pull/82
+    (fetchpatch {
+      name = "scipy-1.12-fix.patch";
+      url = "https://github.com/bodono/scs-python/commit/4baf4effdc2ce7ac2dd1beaf864f1a5292eb06c6.patch";
+      hash = "sha256-U/F5MakwYZN5hCaeAkcCG38WQxX9mXy9OvhyEQqN038=";
+    })
   ];
 
   nativeBuildInputs = [
@@ -62,12 +69,6 @@ buildPythonPackage rec {
 
   nativeCheckInputs = [ pytestCheckHook ];
   pythonImportsCheck = [ "scs" ];
-  disabledTests = lib.lists.optional (stdenv.system == "x86_64-linux") [
-    # `test/test_scs_rand.py` hang on "x86_64-linux" (https://github.com/NixOS/nixpkgs/pull/244532#pullrequestreview-1598095858)
-    "test_feasible"
-    "test_infeasibl"
-    "test_unbounded"
-  ];
 
   meta = with lib; {
     description = "Python interface for SCS: Splitting Conic Solver";
diff --git a/pkgs/development/python-modules/seaborn/default.nix b/pkgs/development/python-modules/seaborn/default.nix
index fef58d973ccf..a296478b176c 100644
--- a/pkgs/development/python-modules/seaborn/default.nix
+++ b/pkgs/development/python-modules/seaborn/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "seaborn";
-  version = "0.13.0";
+  version = "0.13.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "mwaskom";
     repo = "seaborn";
     rev = "refs/tags/v${version}";
-    hash = "sha256-RbtBNKTjUHdCFe1V7IvACgbSNIPhVFMYmtE34GKVIzs=";
+    hash = "sha256-aGIVcdG/XN999nYBHh3lJqGa3QVt0j8kmzaxdkULznY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/selenium/default.nix b/pkgs/development/python-modules/selenium/default.nix
index 5a5c4304c636..09ddebebe240 100644
--- a/pkgs/development/python-modules/selenium/default.nix
+++ b/pkgs/development/python-modules/selenium/default.nix
@@ -34,7 +34,7 @@ buildPythonPackage rec {
   '';
 
   postInstall = ''
-    DST_PREFIX=$out/lib/${python.libPrefix}/site-packages/selenium/webdriver/
+    DST_PREFIX=$out/${python.sitePackages}/selenium/webdriver/
     DST_REMOTE=$DST_PREFIX/remote/
     DST_FF=$DST_PREFIX/firefox
     cp ../rb/lib/selenium/webdriver/atoms/getAttribute.js $DST_REMOTE
diff --git a/pkgs/development/python-modules/sharp-aquos-rc/default.nix b/pkgs/development/python-modules/sharp-aquos-rc/default.nix
new file mode 100644
index 000000000000..5dc7580467e8
--- /dev/null
+++ b/pkgs/development/python-modules/sharp-aquos-rc/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools
+, pyyaml
+}:
+
+buildPythonPackage rec {
+  pname = "sharp-aquos-rc";
+  version = "0.4";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "jmoore987";
+    repo = "sharp_aquos_rc";
+    rev = "refs/tags/${version}";
+    hash = "sha256-w/XA58iT/pmNCy9up5fayjxBsevzgr8ImKgPiNtYHAM=";
+  };
+
+  nativeBuildInputs = [ setuptools ];
+
+  propagatedBuildInputs = [ pyyaml ];
+
+  # No tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "sharp_aquos_rc" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/jmoore987/sharp_aquos_rc";
+    description = "Control Sharp Aquos SmartTVs through the IP interface";
+    changelog = "https://github.com/jmoore987/sharp_aquos_rc/releases/tag/${version}";
+    maintainers = with maintainers; [ jamiemagee ];
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/sphinxcontrib-confluencebuilder/default.nix b/pkgs/development/python-modules/sphinxcontrib-confluencebuilder/default.nix
index dc7798015cb7..6b282371f22b 100644
--- a/pkgs/development/python-modules/sphinxcontrib-confluencebuilder/default.nix
+++ b/pkgs/development/python-modules/sphinxcontrib-confluencebuilder/default.nix
@@ -10,13 +10,13 @@
 
 buildPythonPackage rec {
   pname = "sphinxcontrib-confluencebuilder";
-  version = "2.3.0";
+  version = "2.4.0";
   format = "pyproject";
 
   src = fetchPypi {
     pname = "sphinxcontrib_confluencebuilder";
     inherit version;
-    hash = "sha256-Zpe2n131afnq4IhQEEZtquvSEkkjv/uznXt2tQhGfZA=";
+    hash = "sha256-q3+GwMVWMRu4eWwbdXcbPQzpBhBXcZEMFTpbEO+teLk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/stdlibs/default.nix b/pkgs/development/python-modules/stdlibs/default.nix
index 443dc56aee11..677d282f0653 100644
--- a/pkgs/development/python-modules/stdlibs/default.nix
+++ b/pkgs/development/python-modules/stdlibs/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "stdlibs";
-  version = "2023.12.15";
+  version = "2024.1.28";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "omnilib";
     repo = "stdlibs";
     rev = "refs/tags/v${version}";
-    hash = "sha256-1Av10FNJkCC2XGNx1LDqd0GwiNPIDPXPFatW8+2XoaI=";
+    hash = "sha256-xf46ih7viVUKNIT1tLs5MQPNjNtQlQ2N9BJIGPt4Srk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/subarulink/default.nix b/pkgs/development/python-modules/subarulink/default.nix
index 603acb73884b..9eeb7e99aaa0 100644
--- a/pkgs/development/python-modules/subarulink/default.nix
+++ b/pkgs/development/python-modules/subarulink/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "subarulink";
-  version = "0.7.9";
+  version = "0.7.10";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "G-Two";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-dRhZWV58tHoGpJ2bDWFov1timTHYnqTPILySauutyzg=";
+    hash = "sha256-OKZ55J294I3wPo2vL+wuMMCA4N1ejgtquA8Bf7wPiIs=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/svg-py/default.nix b/pkgs/development/python-modules/svg-py/default.nix
new file mode 100644
index 000000000000..f2971a0b4144
--- /dev/null
+++ b/pkgs/development/python-modules/svg-py/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, flit-core
+, pytestCheckHook
+, pythonOlder
+, pyyaml
+}:
+
+buildPythonPackage rec {
+  pname = "svg-py";
+  version = "1.4.2";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "orsinium-labs";
+    repo = "svg.py";
+    rev = "refs/tags/${version}";
+    hash = "sha256-GbXPDYDq6zlsPJ/PAjR6OvarVrp7x3LGhseyTMwY8Dg=";
+  };
+
+  nativeBuildInputs = [
+    flit-core
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+    pyyaml
+  ];
+
+  pythonImportsCheck = [
+    "svg"
+  ];
+
+  disabledTestPaths = [
+    # Tests need additional files
+    "tests/test_attributes.py"
+  ];
+
+  meta = with lib; {
+    description = "Type-safe Python library to generate SVG files";
+    homepage = "https://github.com/orsinium-labs/svg.py";
+    changelog = "https://github.com/orsinium-labs/svg.py/releases/tag/${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/svgutils/default.nix b/pkgs/development/python-modules/svgutils/default.nix
new file mode 100644
index 000000000000..ea2c7c547e43
--- /dev/null
+++ b/pkgs/development/python-modules/svgutils/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools
+, lxml
+, matplotlib
+, pytestCheckHook
+, nose
+}:
+
+buildPythonPackage rec {
+  pname = "svgutils";
+  version = "0.3.4";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "btel";
+    repo = "svg_utils";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-ITvZx+3HMbTyaRmCb7tR0LKqCxGjqDdV9/2taziUD0c=";
+  };
+
+  nativeBuildInputs = [ setuptools ];
+
+  propagatedBuildInputs = [
+    lxml
+    matplotlib
+  ];
+
+  nativeCheckInputs = [ pytestCheckHook nose ];
+
+  pythonImportsCheck = [ "svgutils" ];
+
+  meta = with lib; {
+    description = "Python tools to create and manipulate SVG files";
+    homepage = "https://github.com/btel/svg_utils";
+    license = licenses.mit;
+    maintainers = with maintainers; [ bcdarwin ];
+  };
+}
diff --git a/pkgs/development/python-modules/tables/default.nix b/pkgs/development/python-modules/tables/default.nix
index 56cb2898bf1f..70a6f86231e8 100644
--- a/pkgs/development/python-modules/tables/default.nix
+++ b/pkgs/development/python-modules/tables/default.nix
@@ -1,6 +1,5 @@
 { lib
 , fetchPypi
-, fetchpatch
 , buildPythonPackage
 , pythonOlder
 , blosc2
@@ -23,7 +22,7 @@
 buildPythonPackage rec {
   pname = "tables";
   version = "3.9.2";
-  pyproject = true;
+  format = "setuptools";
 
   disabled = pythonOlder "3.8";
 
@@ -32,20 +31,6 @@ buildPythonPackage rec {
     hash = "sha256-1HAmPC5QxLfIY1oNmawf8vnnBMJNceX6M8RSnn0K2cM=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "numpy-1.25-compatibility.patch";
-      url = "https://github.com/PyTables/PyTables/commit/337792561e5924124efd20d6fea6bbbd2428b2aa.patch";
-      hash = "sha256-pz3A/jTPWXXlzr+Yl5PRUvdSAinebFsoExfek4RUHkc=";
-    })
-    (fetchpatch {
-      name = "numexpr-2.8.5-compatibility.patch";
-      url = "https://github.com/PyTables/PyTables/commit/1a235490ebe1a138da1139cfa19829b5f0a2af37.patch";
-      includes = [ "tables/tests/test_queries.py" ];
-      hash = "sha256-uMS+Z2Zcz68ILMQaBdIDMnCyasozCaCGOiGIyw0+Evc=";
-    })
-  ];
-
   nativeBuildInputs = [
     blosc2
     cython
diff --git a/pkgs/development/python-modules/tcxreader/default.nix b/pkgs/development/python-modules/tcxreader/default.nix
index 1334708fc7f7..7509b02e94e2 100644
--- a/pkgs/development/python-modules/tcxreader/default.nix
+++ b/pkgs/development/python-modules/tcxreader/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "tcxreader";
-  version = "0.4.6";
+  version = "0.4.9";
   pyproject = true;
 
   disabled = pythonOlder "3.6";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "alenrajsp";
     repo = "tcxreader";
     rev = "refs/tags/v${version}";
-    hash = "sha256-J7yzJfJr2EK/0hZLVgk+Poqr/vY/9bsgA6cePTQ45U0=";
+    hash = "sha256-N/YsH1P8F9bSuzTgrYNU6xEO/yldXNIXMN0pQgIesfc=";
   };
 
   nativeBuildInputs = [
@@ -35,6 +35,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "A reader for Garmin’s TCX file format";
     homepage = "https://github.com/alenrajsp/tcxreader";
+    changelog = "https://github.com/alenrajsp/tcxreader/blob/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ firefly-cpp ];
   };
diff --git a/pkgs/development/python-modules/templateflow/default.nix b/pkgs/development/python-modules/templateflow/default.nix
new file mode 100644
index 000000000000..c879b7064d0f
--- /dev/null
+++ b/pkgs/development/python-modules/templateflow/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, pytestCheckHook
+, setuptools-scm
+, nipreps-versions
+, pybids
+, requests
+, tqdm
+}:
+
+buildPythonPackage rec {
+  pname = "templateflow";
+  version = "23.1.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "templateflow";
+    repo = "python-client";
+    rev = "refs/tags/${version}";
+    hash = "sha256-8AdXC1IFGfYZ5cvCAyBz0tD3zia+KBILX0tL9IcO2NA=";
+  };
+
+  nativeBuildInputs = [ setuptools-scm ];
+  propagatedBuildInputs = [
+    nipreps-versions
+    pybids
+    requests
+    tqdm
+  ];
+
+  doCheck = false;  # most tests try to download data
+  #pythonImportsCheck = [ "templateflow" ];  # touches $HOME/.cache, hence needs https://github.com/NixOS/nixpkgs/pull/120300
+
+  meta = with lib; {
+    homepage = "https://templateflow.org/python-client";
+    description = "Python API to query TemplateFlow via pyBIDS";
+    changelog = "https://github.com/templateflow/python-client/releases/tag/${version}";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ bcdarwin ];
+  };
+}
diff --git a/pkgs/development/python-modules/tensordict/default.nix b/pkgs/development/python-modules/tensordict/default.nix
index c6a563bf55e5..1c5bad17e8a0 100644
--- a/pkgs/development/python-modules/tensordict/default.nix
+++ b/pkgs/development/python-modules/tensordict/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "tensordict";
-  version = "0.2.1";
+  version = "0.3.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "pytorch";
     repo = "tensordict";
     rev = "refs/tags/v${version}";
-    hash = "sha256-+Osoz1632F/dEkG/o8RUqCIDok2Qc9Qdak+CCr9m26g=";
+    hash = "sha256-XTFUzPs/fqX3DPtu/qSE1hY+7r/HToPVPaTyVRzDT/E=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/tesla-fleet-api/default.nix b/pkgs/development/python-modules/tesla-fleet-api/default.nix
new file mode 100644
index 000000000000..508e4f665975
--- /dev/null
+++ b/pkgs/development/python-modules/tesla-fleet-api/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools
+, pythonOlder
+, aiohttp
+}:
+
+buildPythonPackage rec {
+  pname = "tesla-fleet-api";
+  version = "0.2.3";
+  pyproject = true;
+
+  disabled = pythonOlder "3.10";
+
+  src = fetchFromGitHub {
+    owner = "Teslemetry";
+    repo = "python-tesla-fleet-api";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-sijFbwHRgTQXurg0bl5vH8NIGb2pR9XIQod7PJ6/rvY=";
+  };
+
+  nativeBuildInputs = [
+    setuptools
+  ];
+
+  propagatedBuildInputs = [
+    aiohttp
+  ];
+
+  # Module has no tests
+  doCheck  =false;
+
+  pythonImportsCheck = [
+    "tesla_fleet_api"
+  ];
+
+  meta = with lib; {
+    description = "Python library for Tesla Fleet API and Teslemetry";
+    homepage = "https://github.com/Teslemetry/python-tesla-fleet-api";
+    changelog = "https://github.com/Teslemetry/python-tesla-fleet-api/releases/tag/v${version}";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/tilequant/default.nix b/pkgs/development/python-modules/tilequant/default.nix
index fe4a748fa238..220f40354dcc 100644
--- a/pkgs/development/python-modules/tilequant/default.nix
+++ b/pkgs/development/python-modules/tilequant/default.nix
@@ -4,6 +4,7 @@
 , click
 , ordered-set
 , pythonOlder
+, pythonRelaxDepsHook
 , pillow
 , sortedcollections
 , setuptools_dso
@@ -21,6 +22,14 @@ buildPythonPackage rec {
     hash = "sha256-uW1g3nlT6Y+1beifo/MOlGxsGL7on/jcAROxSddySHk=";
   };
 
+  nativeBuildInputs = [
+    pythonRelaxDepsHook
+  ];
+
+  pythonRelaxDeps = [
+    "pillow"
+  ];
+
   propagatedBuildInputs = [
     click
     ordered-set
diff --git a/pkgs/development/python-modules/torchrl/default.nix b/pkgs/development/python-modules/torchrl/default.nix
index bbf1fccd76ba..371a178ab5c9 100644
--- a/pkgs/development/python-modules/torchrl/default.nix
+++ b/pkgs/development/python-modules/torchrl/default.nix
@@ -2,7 +2,6 @@
 , buildPythonPackage
 , pythonOlder
 , fetchFromGitHub
-, fetchpatch
 , ninja
 , setuptools
 , wheel
@@ -32,7 +31,7 @@
 
 buildPythonPackage rec {
   pname = "torchrl";
-  version = "0.2.1";
+  version = "0.3.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -41,17 +40,9 @@ buildPythonPackage rec {
     owner = "pytorch";
     repo = "rl";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Y3WbSMGXS6fb4RyXk2SAKHT6RencGTZXM3tc65AQx74=";
+    hash = "sha256-ngl/gbNm+62W6UFNo8GOhSaIuK9FERDxGBCr++7B4gw=";
   };
 
-  patches = [
-    (fetchpatch {  # https://github.com/pytorch/rl/pull/1828
-      name = "pyproject.toml-remove-unknown-properties";
-      url = "https://github.com/pytorch/rl/commit/c390cf602fc79cb37d5f7bda6e44b5e9546ecda0.patch";
-      hash = "sha256-cUBBvKJ8vIHprcGzMojkUxcOrrmNPIoIBfLwHXWkjOc=";
-    })
-  ];
-
   nativeBuildInputs = [
     ninja
     setuptools
@@ -103,11 +94,6 @@ buildPythonPackage rec {
     rm -rf torchrl
 
     export XDG_RUNTIME_DIR=$(mktemp -d)
-  ''
-  # Otherwise, tochrl will try to use unpackaged torchsnapshot.
-  # TODO: This should be the default from next release so remove when updating from 0.2.1
-  + ''
-    export CKPT_BACKEND="torch"
   '';
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/transformers/default.nix b/pkgs/development/python-modules/transformers/default.nix
index 8b5e1f66b650..ea72ad9f0424 100644
--- a/pkgs/development/python-modules/transformers/default.nix
+++ b/pkgs/development/python-modules/transformers/default.nix
@@ -53,7 +53,7 @@
 
 buildPythonPackage rec {
   pname = "transformers";
-  version = "4.37.1";
+  version = "4.37.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -62,7 +62,7 @@ buildPythonPackage rec {
     owner = "huggingface";
     repo = "transformers";
     rev = "refs/tags/v${version}";
-    hash = "sha256-1W6Ec3+zdv75qd6s6Ogy/wkAKc+lA0xjZNAcMo8Q3ns=";
+    hash = "sha256-O8A+6f6Qwr/OqwzA3i3MPCmcwg1BoQY6mvhozrLz16Y=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/trimesh/default.nix b/pkgs/development/python-modules/trimesh/default.nix
index 83d14083f461..d05cefe6ebe4 100644
--- a/pkgs/development/python-modules/trimesh/default.nix
+++ b/pkgs/development/python-modules/trimesh/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "trimesh";
-  version = "4.1.0";
+  version = "4.1.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ca0KytcPZaflr0eF/CRwbWSjmUzKNSbVkXLbQ1scHZ8=";
+    hash = "sha256-SIHIA6HKo3Ka6rmZrBZfSmN/sNfEjSImYUtbtQs3ozQ=";
   };
 
   nativeBuildInputs = [ setuptools ];
diff --git a/pkgs/development/python-modules/types-aiobotocore/default.nix b/pkgs/development/python-modules/types-aiobotocore/default.nix
index e149c276115f..8ead0699cd77 100644
--- a/pkgs/development/python-modules/types-aiobotocore/default.nix
+++ b/pkgs/development/python-modules/types-aiobotocore/default.nix
@@ -364,12 +364,12 @@
 
 buildPythonPackage rec {
   pname = "types-aiobotocore";
-  version = "2.11.0";
+  version = "2.11.1";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-gw6q/ht30klxav7Du4siFvAkU6Mx2VIzNyDbJzaK47Y=";
+    hash = "sha256-LsG7jHSIEk//iAiBD6SwL6JjlQSezBFGEzrxeYtPrkQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/types-docutils/default.nix b/pkgs/development/python-modules/types-docutils/default.nix
index 8ed9bc0c1998..13cd4f61f93c 100644
--- a/pkgs/development/python-modules/types-docutils/default.nix
+++ b/pkgs/development/python-modules/types-docutils/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-docutils";
-  version = "0.20.0.20240125";
+  version = "0.20.0.20240201";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-r3YOMR2Jrz+PtiVD6FCZ1v2dwDttGjva9mlXNnXVitg=";
+    hash = "sha256-ukv9T/bdGWQLp6tdk5ADk6ZYl4gPNlCZeWSpQ/Tnmms=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/types-markdown/default.nix b/pkgs/development/python-modules/types-markdown/default.nix
index 8b65e9c05945..e0b1301062a6 100644
--- a/pkgs/development/python-modules/types-markdown/default.nix
+++ b/pkgs/development/python-modules/types-markdown/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "types-markdown";
-  version = "3.5.0.20240106";
+  version = "3.5.0.20240129";
   pyproject = true;
 
   src = fetchPypi {
     pname = "types-Markdown";
     inherit version;
-    hash = "sha256-vkfTXL5h1Fi9F67BJ/HaIzzW7Zb6mhMccQN4pOiFcDA=";
+    hash = "sha256-ms02/vJk2e1aljRcRffYDw2WcFnpIhOZizBG+7ZPZ/w=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/types-protobuf/default.nix b/pkgs/development/python-modules/types-protobuf/default.nix
index 841edf89f4c6..362681861f59 100644
--- a/pkgs/development/python-modules/types-protobuf/default.nix
+++ b/pkgs/development/python-modules/types-protobuf/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-protobuf";
-  version = "4.24.0.20240106";
+  version = "4.24.0.20240129";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Ak8DTzteK7K7/1XrxNWR7Q0igNkPrO7csUi55xSj8+4=";
+    hash = "sha256-ioPdO5t2oz4I2GNsXaohKs4TlkGO2Rg3Y1/NVkpiSJE=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/types-psycopg2/default.nix b/pkgs/development/python-modules/types-psycopg2/default.nix
index 0e13f5be9f86..c22fec8de7dd 100644
--- a/pkgs/development/python-modules/types-psycopg2/default.nix
+++ b/pkgs/development/python-modules/types-psycopg2/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-psycopg2";
-  version = "2.9.21.20240118";
+  version = "2.9.21.20240201";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-5KBjFufJaQJVF1w+5d/6W0fFBX8XGB9eNMbc2zQGbzU=";
+    hash = "sha256-daknNfYro2OXQJrkdY8CQcvEqbsw8fldO0pmD+p+dxE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/types-pyopenssl/default.nix b/pkgs/development/python-modules/types-pyopenssl/default.nix
index 3af4ba92b01a..7a0a60049296 100644
--- a/pkgs/development/python-modules/types-pyopenssl/default.nix
+++ b/pkgs/development/python-modules/types-pyopenssl/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "types-pyopenssl";
-  version = "23.3.0.20240106";
+  version = "24.0.0.20240130";
   format = "setuptools";
 
   src = fetchPypi {
     pname = "types-pyOpenSSL";
     inherit version;
-    hash = "sha256-PW80Yr7AwmDKrfk/uzdyJcEmZht3nH2auZttrVyhDbk=";
+    hash = "sha256-yBLlwcNSSfde9ZNXCLKpl9Yqv5dFviIuX5S5WVRyqyU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/types-setuptools/default.nix b/pkgs/development/python-modules/types-setuptools/default.nix
index d98aea408b94..0b7e0d91b2a6 100644
--- a/pkgs/development/python-modules/types-setuptools/default.nix
+++ b/pkgs/development/python-modules/types-setuptools/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-setuptools";
-  version = "68.2.0.2";
+  version = "69.0.0.20240115";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Ce/DgK1cf3jjC8oVRvcGRpVozyYITPq3Ps+D3qHShEY=";
+    hash = "sha256-GpyGOJn0DL4gU9DNHQDd7wMwtJIzVGfQGPc8H+yUYqM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/uamqp/default.nix b/pkgs/development/python-modules/uamqp/default.nix
index f8d4cc0b9dd9..68c72fe80fed 100644
--- a/pkgs/development/python-modules/uamqp/default.nix
+++ b/pkgs/development/python-modules/uamqp/default.nix
@@ -2,7 +2,6 @@
 , stdenv
 , buildPythonPackage
 , fetchFromGitHub
-, fetchpatch
 , cython
 , certifi
 , CFNetwork
@@ -17,26 +16,19 @@
 
 buildPythonPackage rec {
   pname = "uamqp";
-  version = "1.6.5";
+  version = "1.6.8";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "Azure";
     repo = "azure-uamqp-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-q8FxM4PBXLD5q68nrUJ+TGkui1yQJ3HHNF7jn+e+HkA=";
+    hash = "sha256-L4E7nnsVZ/VrOM0t4KtztU9ALmtGfi1vDzUi0ogtZOc=";
   };
 
   patches = lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
     ./darwin-azure-c-shared-utility-corefoundation.patch
   ] ++ [
-    (fetchpatch {
-      name = "CVE-2024-21646.patch";
-      url = "https://github.com/Azure/azure-uamqp-c/commit/12ddb3a31a5a97f55b06fa5d74c59a1d84ad78fe.patch";
-      stripLen = 1;
-      extraPrefix = "src/vendor/azure-uamqp-c/";
-      hash = "sha256-9o3TNKFeJvZRZeS6qo2Zl+JVFrrqAGYWDQbusz4Ou+g=";
-    })
     # Fix incompatible function pointer conversion error with clang 16.
     ./clang-fix-incompatible-function-pointer-conversion.patch
   ];
diff --git a/pkgs/development/python-modules/xdoctest/default.nix b/pkgs/development/python-modules/xdoctest/default.nix
index 357e605d8534..68eb1a0f426b 100644
--- a/pkgs/development/python-modules/xdoctest/default.nix
+++ b/pkgs/development/python-modules/xdoctest/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "xdoctest";
-  version = "1.1.2";
+  version = "1.1.3";
   pyproject = true;
 
   disabled = pythonOlder "3.6";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "Erotemic";
     repo = "xdoctest";
     rev = "refs/tags/v${version}";
-    hash = "sha256-yTu5ldr9TkpYRP8hjgUPpexBVLjaK2gfPvISjMJLY74=";
+    hash = "sha256-MOjT8adJoSxigSG2Gy5gqRfYswjUsgbBOV1ZU0LBDN8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/xiaomi-ble/default.nix b/pkgs/development/python-modules/xiaomi-ble/default.nix
index c79e41d82545..52946718a6c7 100644
--- a/pkgs/development/python-modules/xiaomi-ble/default.nix
+++ b/pkgs/development/python-modules/xiaomi-ble/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "xiaomi-ble";
-  version = "0.21.2";
+  version = "0.24.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-x9FQk3oGSxFrFj/F+QU9n7UMRTn0N4HsGonuNEEe9ug=";
+    hash = "sha256-hKrvV/OzWq07Rb6pU5otNg/A86WnxMKFfs8oA04VvqI=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/yalexs/default.nix b/pkgs/development/python-modules/yalexs/default.nix
index 19d40b4f8051..7f7c86af09cb 100644
--- a/pkgs/development/python-modules/yalexs/default.nix
+++ b/pkgs/development/python-modules/yalexs/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "yalexs";
-  version = "1.10.0";
+  version = "1.11.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "bdraco";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-7LFKqC8IHzXKKU5Pw6Qud9jqJFc0lSEJFn636T6CsfQ=";
+    hash = "sha256-PQPcD2klwXA/7uH1RrdCd26WGaLpcchp7r1M1RXxQ9Y=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/ytmusicapi/default.nix b/pkgs/development/python-modules/ytmusicapi/default.nix
index 56cc67ec5c06..a52954af91f2 100644
--- a/pkgs/development/python-modules/ytmusicapi/default.nix
+++ b/pkgs/development/python-modules/ytmusicapi/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "ytmusicapi";
-  version = "1.5.0";
+  version = "1.5.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "sigma67";
     repo = "ytmusicapi";
     rev = "refs/tags/${version}";
-    hash = "sha256-TlTCW9KeW9O00FzDiH8BXW/3795hsEUW1VXUy5qOk3w=";
+    hash = "sha256-9HpGmilaV5AhzN90/KLFpJjOZJMKS8SjuSE8cXLcBNA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/zcbor/default.nix b/pkgs/development/python-modules/zcbor/default.nix
index 1525a7610c73..9bce9e925c1d 100644
--- a/pkgs/development/python-modules/zcbor/default.nix
+++ b/pkgs/development/python-modules/zcbor/default.nix
@@ -13,12 +13,12 @@
 
 buildPythonPackage rec {
   pname = "zcbor";
-  version = "0.8.0";
+  version = "0.8.1";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-47HwITfFcHNze3tt4vJxHB4BQ7oyl17DM8IV0WomM5Q=";
+    hash = "sha256-U3Y/r3tBhzK6bGnMxdqKzS7bLHyAzgpGZ5PVK9pw7Pk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/zigpy-znp/default.nix b/pkgs/development/python-modules/zigpy-znp/default.nix
index 94fa9cdb0d38..4378570f77f9 100644
--- a/pkgs/development/python-modules/zigpy-znp/default.nix
+++ b/pkgs/development/python-modules/zigpy-znp/default.nix
@@ -8,6 +8,7 @@
 , pytest-mock
 , pytest-rerunfailures
 , pytest-timeout
+, pytest-xdist
 , pytestCheckHook
 , pythonOlder
 , setuptools
@@ -53,6 +54,7 @@ buildPythonPackage rec {
     pytest-mock
     pytest-rerunfailures
     pytest-timeout
+    pytest-xdist
     pytestCheckHook
   ];
 
diff --git a/pkgs/development/python2-modules/pygtk/default.nix b/pkgs/development/python2-modules/pygtk/default.nix
index c3960dd5309d..003474ee8582 100644
--- a/pkgs/development/python2-modules/pygtk/default.nix
+++ b/pkgs/development/python2-modules/pygtk/default.nix
@@ -64,8 +64,8 @@ buildPythonPackage rec {
   postInstall = ''
     rm $out/bin/pygtk-codegen-2.0
     ln -s ${pygobject2}/bin/pygobject-codegen-2.0  $out/bin/pygtk-codegen-2.0
-    ln -s ${pygobject2}/lib/${python.libPrefix}/site-packages/pygobject-${pygobject2.version}.pth \
-                  $out/lib/${python.libPrefix}/site-packages/${pname}-${version}.pth
+    ln -s ${pygobject2}/${python.sitePackages}/pygobject-${pygobject2.version}.pth \
+                  $out/${python.sitePackages}/${pname}-${version}.pth
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/r-modules/default.nix b/pkgs/development/r-modules/default.nix
index 43d64f98639b..d39d0c5b8441 100644
--- a/pkgs/development/r-modules/default.nix
+++ b/pkgs/development/r-modules/default.nix
@@ -1304,7 +1304,7 @@ let
         substituteInPlace R/zzz.R \
           --replace ".onLoad <- function(...) {" \
             ".onLoad <- function(...) {
-          Sys.setenv(\"SPARK_HOME\" = Sys.getenv(\"SPARK_HOME\", unset = \"${pkgs.python3Packages.pyspark}/lib/${pkgs.python3Packages.python.libPrefix}/site-packages/pyspark\"))
+          Sys.setenv(\"SPARK_HOME\" = Sys.getenv(\"SPARK_HOME\", unset = \"${pkgs.python3Packages.pyspark}/${pkgs.python3Packages.python.sitePackages}/pyspark\"))
           Sys.setenv(\"JAVA_HOME\" = Sys.getenv(\"JAVA_HOME\", unset = \"${pkgs.jdk}\"))"
       '';
     });
diff --git a/pkgs/development/ruby-modules/gem-config/default.nix b/pkgs/development/ruby-modules/gem-config/default.nix
index 97715659be0d..a0f4effd1fbf 100644
--- a/pkgs/development/ruby-modules/gem-config/default.nix
+++ b/pkgs/development/ruby-modules/gem-config/default.nix
@@ -312,7 +312,9 @@ in
           cp -R ext/fast_mmaped_file_rs $out
         '';
       };
-      hash = "sha256-XuQZPbFWqPHlrJvllkvLl1FjKeoAUbi8oKDrS2rY1KM=";
+      hash = if lib.versionAtLeast attrs.version "1.1.0"
+        then "sha256-tSyoCEBtMMkFfPynaMx8oc9bO7I+Pf6Y/f3Ld8uwlEE="
+        else "sha256-XuQZPbFWqPHlrJvllkvLl1FjKeoAUbi8oKDrS2rY1KM=";
     };
     nativeBuildInputs = [
       cargo
@@ -320,10 +322,16 @@ in
       rustPlatform.cargoSetupHook
       rustPlatform.bindgenHook
     ];
+    disallowedReferences = [
+      rustc.unwrapped
+    ];
     preBuild = ''
       cat ../.cargo/config > ext/fast_mmaped_file_rs/.cargo/config.toml
       sed -i "s|cargo-vendor-dir|$PWD/../cargo-vendor-dir|" ext/fast_mmaped_file_rs/.cargo/config.toml
     '';
+    postInstall = ''
+      find $out -type f -name .rustc_info.json -delete
+    '';
   };
 
   glib2 = attrs: {
diff --git a/pkgs/development/tools/allure/default.nix b/pkgs/development/tools/allure/default.nix
index f12f35b66a4d..9580a6431fd2 100644
--- a/pkgs/development/tools/allure/default.nix
+++ b/pkgs/development/tools/allure/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "allure";
-  version = "2.26.0";
+  version = "2.27.0";
 in
 stdenv.mkDerivation rec {
   inherit pname version;
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/allure-framework/allure2/releases/download/${version}/allure-${version}.tgz";
-    sha256 = "sha256-db4pfbJOEkw0P/e3EB4XV3xnRnzcVHXDSn0M0fdHgDQ=";
+    sha256 = "sha256-gasOVDCNxuZlyeDbloV6iL6DAInHPEXHAvnfUfoj+gA=";
   };
   dontConfigure = true;
   dontBuild = true;
diff --git a/pkgs/development/tools/analysis/checkov/default.nix b/pkgs/development/tools/analysis/checkov/default.nix
index 94eb10e0d103..41239585bbec 100644
--- a/pkgs/development/tools/analysis/checkov/default.nix
+++ b/pkgs/development/tools/analysis/checkov/default.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "checkov";
-  version = "3.1.70";
+  version = "3.2.5";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "bridgecrewio";
     repo = "checkov";
     rev = "refs/tags/${version}";
-    hash = "sha256-6HR6Hfv8dAo3/GT1OZQmH7yq4fY9Xi8SKkGUjG9914I=";
+    hash = "sha256-28DvlExTH1YELQAgY3d3HrNLCaX2pWiL7l+Y/WQ3z5s=";
   };
 
   patches = [
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index b379f5ce4017..21811bd668c7 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flow";
-  version = "0.227.0";
+  version = "0.228.0";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = "flow";
     rev = "v${version}";
-    hash = "sha256-+tVSlqKyf70fxUfIQ+KnhzI6nE5Weh9D9JIlStah83U=";
+    hash = "sha256-JUmDnpa9hvaGBcZR+OOD9R4P06x94zAdXW1SotXlcMc=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/analysis/frama-c/default.nix b/pkgs/development/tools/analysis/frama-c/default.nix
index 0ff3e6ad1af6..1bf477cf3d16 100644
--- a/pkgs/development/tools/analysis/frama-c/default.nix
+++ b/pkgs/development/tools/analysis/frama-c/default.nix
@@ -20,7 +20,7 @@ let
     ppx_deriving_yojson
     ppx_import
     stdlib-shims
-    why3
+    why3.dev
     re
     result
     seq
diff --git a/pkgs/development/tools/analysis/snyk/default.nix b/pkgs/development/tools/analysis/snyk/default.nix
index c207b201d569..fc5db92cb161 100644
--- a/pkgs/development/tools/analysis/snyk/default.nix
+++ b/pkgs/development/tools/analysis/snyk/default.nix
@@ -2,16 +2,16 @@
 
 buildNpmPackage rec {
   pname = "snyk";
-  version = "1.1274.0";
+  version = "1.1276.0";
 
   src = fetchFromGitHub {
     owner = "snyk";
     repo = "cli";
     rev = "v${version}";
-    hash = "sha256-cQIgHHulgjUxrl35dKEf7j9kZUp378rLmgwz4K8+Qy0=";
+    hash = "sha256-l5Xx6z3NbtwdtKe8MmRWTJoKaEH3AZjHKXqoLv3rHfU=";
   };
 
-  npmDepsHash = "sha256-Ji7zbmPNsqeXsC+mnYnfKL7m7mkXRAcwlaP+M8wWrIo=";
+  npmDepsHash = "sha256-FJGxCEhBADH4c1khJaVFHL4e25Mq4PHrez+2NPFBx0w=";
 
   postPatch = ''
     substituteInPlace package.json --replace '"version": "1.0.0-monorepo"' '"version": "${version}"'
diff --git a/pkgs/development/tools/api-linter/default.nix b/pkgs/development/tools/api-linter/default.nix
index d1ce3fde4464..97bda5410596 100644
--- a/pkgs/development/tools/api-linter/default.nix
+++ b/pkgs/development/tools/api-linter/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "api-linter";
-  version = "1.63.2";
+  version = "1.63.3";
 
   src = fetchFromGitHub {
     owner = "googleapis";
     repo = "api-linter";
     rev = "v${version}";
-    hash = "sha256-xbYu/5E3rkH5VUuH0fCs2gfpWysDVABxY+pA4JkU5WY=";
+    hash = "sha256-mcmp3M9KhZp3j18jh+3v5fwPPLRs2hkrRUN3RM/zCmo=";
   };
 
-  vendorHash = "sha256-SDfErsM9wC1bGgBwcMRvjTOzqGNQ3kIQM7XeL4sLTC8=";
+  vendorHash = "sha256-/z2FqMyZnn2A5aajimTS2zw3A1v5v0uYZY81acuQOnw=";
 
   subPackages = [ "cmd/api-linter" ];
 
@@ -23,14 +23,6 @@ buildGoModule rec {
     "-w"
   ];
 
-  # reference: https://github.com/googleapis/api-linter/blob/v1.63.2/.github/workflows/release.yaml#L76
-  preBuild = ''
-    cat > cmd/api-linter/version.go <<EOF
-    package main
-    const version = "${version}"
-    EOF
-  '';
-
   meta = with lib; {
     description = "Linter for APIs defined in protocol buffers";
     homepage = "https://github.com/googleapis/api-linter/";
diff --git a/pkgs/development/tools/azcopy/default.nix b/pkgs/development/tools/azcopy/default.nix
index 17be1edca98f..ed7db536bd83 100644
--- a/pkgs/development/tools/azcopy/default.nix
+++ b/pkgs/development/tools/azcopy/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "azure-storage-azcopy";
-  version = "10.22.2";
+  version = "10.23.0";
 
   src = fetchFromGitHub {
     owner = "Azure";
     repo = "azure-storage-azcopy";
     rev = "refs/tags/v${version}";
-    hash = "sha256-mC6iAsUmnJeVIJPkoI/pNN6mujALW9qvQ4M7Wk9eLnQ=";
+    hash = "sha256-Df45DHGA7EM4hx3iAmYNNUHjrUrkW6QniJkHaN7wNZM=";
   };
 
   subPackages = [ "." ];
diff --git a/pkgs/development/tools/bearer/default.nix b/pkgs/development/tools/bearer/default.nix
index ce9e365a6579..bc7412c1d72c 100644
--- a/pkgs/development/tools/bearer/default.nix
+++ b/pkgs/development/tools/bearer/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "bearer";
-  version = "1.36.0";
+  version = "1.37.0";
 
   src = fetchFromGitHub {
     owner = "bearer";
     repo = "bearer";
     rev = "refs/tags/v${version}";
-    hash = "sha256-l5dGWr4oYD+Ado+KdCm+EmEhrkP3rJ9npudXEL9uY4c=";
+    hash = "sha256-b4EQAAPYMoL1MP5sVr3Fu0/znWxlVzpeGbghommCpUg=";
   };
 
-  vendorHash = "sha256-2/bg5RaT1ISYq5VjH5FrB7TThAb3UucAoFsPlkxaHVg=";
+  vendorHash = "sha256-jE1DUANd1PgSWbwz/PV1pIMgzvRm0ApaJaLCljMw4ig=";
 
   subPackages = [
     "cmd/bearer"
diff --git a/pkgs/development/tools/build-managers/gup/default.nix b/pkgs/development/tools/build-managers/gup/default.nix
index c051b34dea35..202fdf4d296f 100644
--- a/pkgs/development/tools/build-managers/gup/default.nix
+++ b/pkgs/development/tools/build-managers/gup/default.nix
@@ -1,18 +1,17 @@
 { stdenv, fetchFromGitHub, nix-update-source, lib, python3
-, which, runtimeShell, pychecker ? null }:
+, which, runtimeShell, pylint }:
 stdenv.mkDerivation rec {
-  version = "0.8.4";
+  version = "0.9.0";
   src = fetchFromGitHub {
     owner = "timbertson";
     repo = "gup";
     rev = "version-${version}";
-    sha256 = "0b8q9mrr7b9silwc4mp733j1z18g4lp6ppdi8p2rxzgb2fb4bkvp";
+    sha256 = "12ck047jminfwb4cfzmvfc9dpxg25xian11jgly534rlcbmgmkgq";
   };
   pname = "gup";
-  nativeBuildInputs = [ python3 which pychecker ];
+  nativeBuildInputs = [ python3 which pylint ];
   buildInputs = [ python3 ];
   strictDeps = true;
-  SKIP_PYCHECKER = pychecker == null;
   buildPhase = "make python";
   installPhase = ''
     mkdir $out
diff --git a/pkgs/development/tools/build-managers/moon/default.nix b/pkgs/development/tools/build-managers/moon/default.nix
index bc96ddd52b99..b8dc4d27b2b9 100644
--- a/pkgs/development/tools/build-managers/moon/default.nix
+++ b/pkgs/development/tools/build-managers/moon/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "moon";
-  version = "1.20.0";
+  version = "1.20.1";
 
   src = fetchFromGitHub {
     owner = "moonrepo";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-J/xlLKCoh+NekPcCAyM4ZN+OL6dLcworiO3gqCetu9A=";
+    hash = "sha256-wAY5jifyjK5jp5nlrwt/Krp96in06SnayTKx8inrf0A=";
   };
 
-  cargoHash = "sha256-TU1vWyAbbS9ScRdDgQMvY6Ov9uCv9TrzzhznyZleC0E=";
+  cargoHash = "sha256-qfDw+zmhk0M3gItiB7qfgiQCBRvOYBOirJFMyNRr714=";
 
   env = {
     RUSTFLAGS = "-C strip=symbols";
diff --git a/pkgs/development/tools/buildah/default.nix b/pkgs/development/tools/buildah/default.nix
index 81d00d6304e0..f67dba03c365 100644
--- a/pkgs/development/tools/buildah/default.nix
+++ b/pkgs/development/tools/buildah/default.nix
@@ -17,13 +17,13 @@
 
 buildGoModule rec {
   pname = "buildah";
-  version = "1.33.2";
+  version = "1.34.0";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "buildah";
     rev = "v${version}";
-    hash = "sha256-jkUEGaECBNidKreoyezWw7LN38uHqyYo40dOwfuuuI4=";
+    hash = "sha256-LX7yc2FnCiquHV/tESJV/VkuUYXbRNSxmMzVpSz/F8w=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/development/tools/buildkit/default.nix b/pkgs/development/tools/buildkit/default.nix
index 8898ff89f371..19f418b543a1 100644
--- a/pkgs/development/tools/buildkit/default.nix
+++ b/pkgs/development/tools/buildkit/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "buildkit";
-  version = "0.12.4";
+  version = "0.12.5";
 
   src = fetchFromGitHub {
     owner = "moby";
     repo = "buildkit";
     rev = "v${version}";
-    hash = "sha256-nQvrd2W9xWWGTlwN5Q2E3rs67OUxZ4bIp+rK2W2PUww=";
+    hash = "sha256-LESaOrUxV/BHGW9JSZfTXpbedp1aegPFWu9/tRx2ArM=";
   };
 
   vendorHash = null;
diff --git a/pkgs/development/tools/capnproto-java/default.nix b/pkgs/development/tools/capnproto-java/default.nix
index cbda8c2cc97e..b96aa44a779c 100644
--- a/pkgs/development/tools/capnproto-java/default.nix
+++ b/pkgs/development/tools/capnproto-java/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "capnproto-java";
-  version = "0.1.15";
+  version = "0.1.16";
 
   src = fetchFromGitHub {
     owner = "capnproto";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256:IcmzI1G0mXOlpzmiyeLD7o1p/eOeVpwkiGsgy5OIjxw=";
+    hash = "sha256-7uYtRHKsJvbE1b0HbNXGbRXpkUHHLjMDIWLlOUcQWDk=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/development/tools/check-jsonschema/default.nix b/pkgs/development/tools/check-jsonschema/default.nix
index 3731e3e7e5f3..3591e5a2515f 100644
--- a/pkgs/development/tools/check-jsonschema/default.nix
+++ b/pkgs/development/tools/check-jsonschema/default.nix
@@ -4,7 +4,7 @@ with python3.pkgs;
 
 buildPythonApplication rec {
   pname = "check-jsonschema";
-  version = "0.27.3";
+  version = "0.27.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -12,8 +12,8 @@ buildPythonApplication rec {
   src = fetchFromGitHub {
     owner = "python-jsonschema";
     repo = "check-jsonschema";
-    rev = version;
-    hash = "sha256-WXvhlkU1dRNKhW3sMakd644W56xv8keMjSZL4MrQEc8=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-xOLS2AQlVrL9b7VVCbnDyjHhQYmcD2DvPmEs+nn7Gm4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/tools/cloudsmith-cli/default.nix b/pkgs/development/tools/cloudsmith-cli/default.nix
index ee3cd5ac33a3..48952c0616fb 100644
--- a/pkgs/development/tools/cloudsmith-cli/default.nix
+++ b/pkgs/development/tools/cloudsmith-cli/default.nix
@@ -5,13 +5,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "cloudsmith-cli";
-  version = "0.35.2";
+  version = "1.1.1";
   format = "wheel";
 
   src = fetchPypi {
     pname = "cloudsmith_cli";
     inherit format version;
-    hash = "sha256-+M4CPveS9dltMI291Atm84T/cf4dPOO3wPvPI15E73Y=";
+    hash = "sha256-evwXXGmGa6V2LhgkmX04E5VvdPxeZzvl4F28auXcSng=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/pkgs/development/tools/continuous-integration/buildbot/master.nix b/pkgs/development/tools/continuous-integration/buildbot/master.nix
index d57e11fb07ab..d2554713109c 100644
--- a/pkgs/development/tools/continuous-integration/buildbot/master.nix
+++ b/pkgs/development/tools/continuous-integration/buildbot/master.nix
@@ -70,14 +70,14 @@ let
 
   package = buildPythonApplication rec {
     pname = "buildbot";
-    version = "3.10.1";
+    version = "3.11.0";
     format = "pyproject";
 
     disabled = pythonOlder "3.8";
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-/J4jWoIZEObSZKw04Ib6h4AvJtfNwzwozRu+gFek1Dk=";
+      hash = "sha256-0TW14K0Cp3Ylk+JDNV9x7a8Ul7EC5FTTVvSGccXv6JU=";
     };
 
     propagatedBuildInputs = [
diff --git a/pkgs/development/tools/continuous-integration/buildbot/pkg.nix b/pkgs/development/tools/continuous-integration/buildbot/pkg.nix
index 88b03f46a362..80c417066428 100644
--- a/pkgs/development/tools/continuous-integration/buildbot/pkg.nix
+++ b/pkgs/development/tools/continuous-integration/buildbot/pkg.nix
@@ -6,7 +6,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-6lJW1XNwKXeTTn0jDOIsVHUrmxSWc4iK3gINvTFX2XU=";
+    hash = "sha256-ImXiBIFSj0of2SFX01sXB5BI4TYA2IAGmfPofC8ERZQ=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/continuous-integration/buildbot/plugins.nix b/pkgs/development/tools/continuous-integration/buildbot/plugins.nix
index 5e9f056f3708..4d2253c54d61 100644
--- a/pkgs/development/tools/continuous-integration/buildbot/plugins.nix
+++ b/pkgs/development/tools/continuous-integration/buildbot/plugins.nix
@@ -8,7 +8,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-W0NRRS0z02/31eyqVRGJUZlUaI77I9WuAI3d3FlWHOQ=";
+      hash = "sha256-bu22WXJ2yBGe89GL3RBxkUN/yPu2GEYURk6C+2LIpns=";
     };
 
     # Remove unnecessary circular dependency on buildbot
@@ -35,7 +35,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-NfpgTZ0+sP2U8rkf+C4WTpXKVBvO8T+ijs8xIPe49tA=";
+      hash = "sha256-WDtw4wSAPsmIRcoZS1PIRzQR4OJnHVyc19Q7MnU5VSs=";
     };
 
     # Remove unnecessary circular dependency on buildbot
@@ -62,7 +62,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-ykzzvsxP8e0TIHnZJPSnFJoZNNZDvbZ7vZ6hCZyd0iA=";
+      hash = "sha256-HGlKu9ptej35GJYBBWted/YtsH/uigckAoFAjYTh3gY=";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -84,7 +84,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-U0j/ovoP3A83BzQWF4dtwisJxs00mZz0yyT12mlxfGo=";
+      hash = "sha256-oFbR4NvI/6oPXY8TospkHS1j/5KzXd1fguazFtDPIko=";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -106,7 +106,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-cu0+66DHf8Hfvfx/IvVyexwl3I0MmLjJrNDBPLxo7Bg=";
+      hash = "sha256-O4scYAKpoEOXsPIodkKUrfwCGNYHlOGfvDnguaM12U0=";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -128,7 +128,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-vt7ea0IWIKn4i8sBUUMsoOMi1gPzzFssQ6wORDClJqs=";
+      hash = "sha256-DlYqK32lVdZ8qby/1+JCo6m81/0dsxqiAfWMIZ1OAPQ=";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -150,7 +150,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-Fd8r2+jV4YSuYu6zUl0fDjEdUGkzuHckR+PTSEyoXio=";
+      hash = "sha256-cK+uZU7rG423IT8xvwrpMPiUXfu1oPpGB5onmWNK4fs=";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -172,7 +172,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-Q8gwqUfMy+D9dPBSw60BhNV12iu9mjhc7KXKYjtO23s=";
+      hash = "sha256-Gbc0T1fsmke1pO/LiXCzQYrjWzYG1WhHZgypLyzhfok=";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -194,7 +194,7 @@
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-LzsdHTABtHJzEfkyJ6LbmLE0QmKA3DVjY8VP90O3jT4=";
+      hash = "sha256-eFfOYhKw575VWlwD5dKRnqjSUV6kdPrv3UXBs/3AREo=";
     };
 
     buildInputs = [ buildbot-pkg ];
@@ -210,13 +210,35 @@
     };
   };
 
+  react-wsgi-dashboards = buildPythonPackage rec {
+    pname = "buildbot-react-wsgi-dashboards";
+    inherit (buildbot-pkg) version;
+
+    src = fetchPypi {
+      inherit pname version;
+      hash = "sha256-0CCD1Zrj1xodUITvLzTDrLgLGaEVqt8y26f+exsP4N8=";
+    };
+
+    buildInputs = [ buildbot-pkg ];
+
+    # tests fail
+    doCheck = false;
+
+    meta = with lib; {
+      homepage = "https://buildbot.net/";
+      description = "Buildbot WSGI dashboards Plugin (React)";
+      maintainers = teams.buildbot.members;
+      license = licenses.gpl2;
+    };
+  };
+
   badges = buildPythonPackage rec {
     pname = "buildbot-badges";
     inherit (buildbot-pkg) version;
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-tVMXGYTZlkchfeEcHh3B/wGEZb8xUemtnbFzX65tvb8=";
+      hash = "sha256-FNMspluhQlGgQ4X7gJisakHTTmn/5PtQ+obK26PrXdg=";
     };
 
     buildInputs = [ buildbot-pkg ];
diff --git a/pkgs/development/tools/continuous-integration/buildbot/worker.nix b/pkgs/development/tools/continuous-integration/buildbot/worker.nix
index c87b8db563c9..eb613858f463 100644
--- a/pkgs/development/tools/continuous-integration/buildbot/worker.nix
+++ b/pkgs/development/tools/continuous-integration/buildbot/worker.nix
@@ -28,7 +28,7 @@ buildPythonPackage (rec {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-jihAPEzeegUEa/BZ93De7728IXjL7BkrwfPk5G6rnUw=";
+    hash = "sha256-7zpf1Xl5dYPJk8V5PQCx/v+sE9kH23UWM9QbE0fH4tA=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/continuous-integration/cirrus-cli/default.nix b/pkgs/development/tools/continuous-integration/cirrus-cli/default.nix
index 2a08b991a102..4972f2cd90b1 100644
--- a/pkgs/development/tools/continuous-integration/cirrus-cli/default.nix
+++ b/pkgs/development/tools/continuous-integration/cirrus-cli/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "cirrus-cli";
-  version = "0.108.5";
+  version = "0.110.0";
 
   src = fetchFromGitHub {
     owner = "cirruslabs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-+2rrKty5XLf8AYXAMI/7ngf5SPqD62ELBcA67sETpOI=";
+    sha256 = "sha256-5BMaOuiXz8SMfaB7qFvCyboGFKxzenkEVwj25Qh4MKw=";
   };
 
-  vendorHash = "sha256-AGg6R2TUKW2yU0O8QXrK6r37HKl2HQ+YOJjBkMmHVgM=";
+  vendorHash = "sha256-xJnBMSfYwx6uHuMjyR9IWGHwt3fNajDr6DW8o+J+lj8=";
 
   ldflags = [
     "-X github.com/cirruslabs/cirrus-cli/internal/version.Version=v${version}"
diff --git a/pkgs/development/tools/continuous-integration/jenkins/default.nix b/pkgs/development/tools/continuous-integration/jenkins/default.nix
index 0298fe20055a..e88c92d83b0d 100644
--- a/pkgs/development/tools/continuous-integration/jenkins/default.nix
+++ b/pkgs/development/tools/continuous-integration/jenkins/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "jenkins";
-  version = "2.426.2";
+  version = "2.426.3";
 
   src = fetchurl {
     url = "https://get.jenkins.io/war-stable/${version}/jenkins.war";
-    hash = "sha256-NzG59Elz+78+U1+YqAwhqtlxnLTuqKHlnpdMEf6EaEg=";
+    hash = "sha256-q0OSQ6agfi54/nw0CMWWCfe+O/JolHrCFGV6+Wq60QY=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix b/pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix
index a3f27e533e7d..c05800237637 100644
--- a/pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix
+++ b/pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "woodpecker-plugin-git";
-  version = "2.4.0";
+  version = "2.5.0";
 
   src = fetchFromGitHub {
     owner = "woodpecker-ci";
     repo = "plugin-git";
     rev = "refs/tags/${version}";
-    hash = "sha256-9aK6c2uUBhTzBni6S4XwevdVRxswiMYGJKwmKOGHIbg=";
+    hash = "sha256-vQcHEsOJFMbrt5KpoHB59g5gIxwXQuJpudhu2qbgCY8=";
   };
 
-  vendorHash = "sha256-ol5k37gGFsyeEnGOVcJaerkIejShHyNCBu4RZ8WyHvU=";
+  vendorHash = "sha256-nPeF6Z+d69o1JwCUlzVREx8DyIqokHIfTRC1/S5XG6A=";
 
   CGO_ENABLED = "0";
 
diff --git a/pkgs/development/tools/continuous-integration/woodpecker/common.nix b/pkgs/development/tools/continuous-integration/woodpecker/common.nix
index cdb54fa07f71..bad183d98125 100644
--- a/pkgs/development/tools/continuous-integration/woodpecker/common.nix
+++ b/pkgs/development/tools/continuous-integration/woodpecker/common.nix
@@ -1,18 +1,17 @@
-{ lib, fetchFromGitHub }:
+{ lib, fetchzip }:
 let
-  version = "1.0.5";
-  srcHash = "sha256-tkgkhYuLHfmT42P+UMZ7uNB2wBKo0YGiw0a5RoMAu6M=";
-  vendorHash = "sha256-QTTnTPOgP+FlbqXNCGJc9VuBzQcMujpvFB3+DykYTPY=";
-  yarnHash = "sha256-TrcTc5svLLSedRC8gCwIBW7/mtHo+uSNZGImtRiVJ0w=";
+  version = "2.3.0";
+  srcHash = "sha256-r5TV5WJW2klSlrOG6EjfUgLyHhMI+BMUTY/2JIUgd0Q=";
+  # The tarball contains vendored dependencies
+  vendorHash = null;
 in
 {
-  inherit version yarnHash vendorHash;
+  inherit version vendorHash;
 
-  src = fetchFromGitHub {
-    owner = "woodpecker-ci";
-    repo = "woodpecker";
-    rev = "v${version}";
+  src = fetchzip {
+    url = "https://github.com/woodpecker-ci/woodpecker/releases/download/v${version}/woodpecker-src.tar.gz";
     hash = srcHash;
+    stripRoot = false;
   };
 
   postInstall = ''
@@ -26,7 +25,7 @@ in
   ldflags = [
     "-s"
     "-w"
-    "-X github.com/woodpecker-ci/woodpecker/version.Version=${version}"
+    "-X go.woodpecker-ci.org/woodpecker/v2/version.Version=${version}"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix b/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix
deleted file mode 100644
index 01767d6fe00e..000000000000
--- a/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-{ lib, buildPackages, callPackage, fetchFromGitHub, fetchYarnDeps, mkYarnPackage }:
-let
-  common = callPackage ./common.nix { };
-
-  esbuild_0_17_19 = buildPackages.esbuild.overrideAttrs (_: rec {
-    version = "0.17.19";
-
-    src = fetchFromGitHub {
-      owner = "evanw";
-      repo = "esbuild";
-      rev = "v${version}";
-      hash = "sha256-PLC7OJLSOiDq4OjvrdfCawZPfbfuZix4Waopzrj8qsU=";
-    };
-
-    vendorHash = "sha256-+BfxCyg0KkDQpHt/wycy/8CTG6YBA/VJvJFhhzUnSiQ=";
-  });
-in
-mkYarnPackage {
-  pname = "woodpecker-frontend";
-  inherit (common) version;
-
-  src = "${common.src}/web";
-
-  packageJSON = ./woodpecker-package.json;
-  yarnLock = ./yarn.lock;
-
-  offlineCache = fetchYarnDeps {
-    yarnLock = ./yarn.lock;
-    hash = common.yarnHash;
-  };
-
-  ESBUILD_BINARY_PATH = lib.getExe esbuild_0_17_19;
-
-  buildPhase = ''
-    runHook preBuild
-
-    yarn --offline build
-
-    runHook postBuild
-  '';
-
-  installPhase = ''
-    runHook preInstall
-
-    cp -R deps/woodpecker-ci/dist $out
-    echo "${common.version}" > "$out/version"
-
-    runHook postInstall
-  '';
-
-  # Do not attempt generating a tarball for woodpecker-frontend again.
-  doDist = false;
-
-  meta = common.meta // {
-    description = "Woodpecker Continuous Integration server frontend";
-  };
-}
diff --git a/pkgs/development/tools/continuous-integration/woodpecker/server.nix b/pkgs/development/tools/continuous-integration/woodpecker/server.nix
index 874949dff2f4..fb232a19ba2e 100644
--- a/pkgs/development/tools/continuous-integration/woodpecker/server.nix
+++ b/pkgs/development/tools/continuous-integration/woodpecker/server.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, callPackage, woodpecker-frontend }:
+{ buildGoModule, callPackage }:
 let
   common = callPackage ./common.nix { };
 in
@@ -6,17 +6,11 @@ buildGoModule {
   pname = "woodpecker-server";
   inherit (common) version src ldflags postInstall vendorHash;
 
-  postPatch = ''
-    cp -r ${woodpecker-frontend} web/dist
-  '';
-
   subPackages = "cmd/server";
 
   CGO_ENABLED = 1;
 
   passthru = {
-    inherit woodpecker-frontend;
-
     updateScript = ./update.sh;
   };
 
diff --git a/pkgs/development/tools/continuous-integration/woodpecker/update.sh b/pkgs/development/tools/continuous-integration/woodpecker/update.sh
index bfe948e8f507..4ee52f9aded2 100755
--- a/pkgs/development/tools/continuous-integration/woodpecker/update.sh
+++ b/pkgs/development/tools/continuous-integration/woodpecker/update.sh
@@ -1,5 +1,5 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -i bash -p nix wget prefetch-yarn-deps nix-prefetch-github jq nix-prefetch pnpm-lock-export
+#!nix-shell -i bash -p nix wget jq nix-prefetch
 
 # shellcheck shell=bash
 
@@ -26,28 +26,9 @@ fi
 
 # strip leading "v"
 version="${version#v}"
+sed -i -E -e "s#version = \".*\"#version = \"$version\"#" common.nix
 
 # Woodpecker repository
-src_hash=$(nix-prefetch-github woodpecker-ci woodpecker --rev "v${version}" | jq -r .hash)
-
-# Go modules
-vendorHash=$(nix-prefetch '{ sha256 }: (callPackage (import ./cli.nix) { }).goModules.overrideAttrs (_: { modHash = sha256; })')
-
-# Front-end dependencies
-woodpecker_src="https://raw.githubusercontent.com/woodpecker-ci/woodpecker/v$version"
-wget "${TOKEN_ARGS[@]}" "$woodpecker_src/web/package.json" -O woodpecker-package.json
-
-trap 'rm -rf pnpm-lock.yaml' EXIT
-wget "${TOKEN_ARGS[@]}" "$woodpecker_src/web/pnpm-lock.yaml"
-pnpm-lock-export --schema yarn.lock@v1
-yarn_hash=$(prefetch-yarn-deps yarn.lock)
-
-# Use friendlier hashes
+src_hash=$(nix-prefetch-url --type sha256 --unpack "https://github.com/woodpecker-ci/woodpecker/releases/download/v$version/woodpecker-src.tar.gz")
 src_hash=$(nix hash to-sri --type sha256 "$src_hash")
-vendorHash=$(nix hash to-sri --type sha256 "$vendorHash")
-yarn_hash=$(nix hash to-sri --type sha256 "$yarn_hash")
-
-sed -i -E -e "s#version = \".*\"#version = \"$version\"#" common.nix
 sed -i -E -e "s#srcHash = \".*\"#srcHash = \"$src_hash\"#" common.nix
-sed -i -E -e "s#vendorHash = \".*\"#vendorHash = \"$vendorHash\"#" common.nix
-sed -i -E -e "s#yarnHash = \".*\"#yarnHash = \"$yarn_hash\"#" common.nix
diff --git a/pkgs/development/tools/continuous-integration/woodpecker/woodpecker-package.json b/pkgs/development/tools/continuous-integration/woodpecker/woodpecker-package.json
deleted file mode 100644
index 565c05aa8c2d..000000000000
--- a/pkgs/development/tools/continuous-integration/woodpecker/woodpecker-package.json
+++ /dev/null
@@ -1,77 +0,0 @@
-{
-  "name": "woodpecker-ci",
-  "author": "Woodpecker CI",
-  "version": "0.0.0",
-  "license": "Apache-2.0",
-  "engines": {
-    "node": ">=14"
-  },
-  "scripts": {
-    "start": "vite",
-    "build": "vite build --base=/BASE_PATH",
-    "serve": "vite preview",
-    "lint": "eslint --max-warnings 0 --ext .js,.ts,.vue,.json .",
-    "formatcheck": "prettier -c .",
-    "format:fix": "prettier --write .",
-    "typecheck": "vue-tsc --noEmit",
-    "test": "echo 'No tests configured' && exit 0"
-  },
-  "dependencies": {
-    "@intlify/unplugin-vue-i18n": "^0.10.1",
-    "@kyvg/vue3-notification": "^2.9.1",
-    "@vueuse/core": "^9.13.0",
-    "ansi_up": "^5.2.1",
-    "dayjs": "^1.11.9",
-    "floating-vue": "^2.0.0-beta.24",
-    "fuse.js": "^6.6.2",
-    "humanize-duration": "^3.28.0",
-    "javascript-time-ago": "^2.5.9",
-    "lodash": "^4.17.21",
-    "node-emoji": "^1.11.0",
-    "pinia": "^2.1.4",
-    "prismjs": "^1.29.0",
-    "vue": "^3.3.4",
-    "vue-i18n": "^9.2.2",
-    "vue-router": "^4.2.2"
-  },
-  "devDependencies": {
-    "@iconify/json": "^2.2.85",
-    "@types/humanize-duration": "^3.27.1",
-    "@types/javascript-time-ago": "^2.0.3",
-    "@types/lodash": "^4.14.195",
-    "@types/node": "^18.16.19",
-    "@types/node-emoji": "^1.8.2",
-    "@types/prismjs": "^1.26.0",
-    "@typescript-eslint/eslint-plugin": "^5.60.1",
-    "@typescript-eslint/parser": "^5.60.1",
-    "@vitejs/plugin-vue": "^4.2.3",
-    "@vue/compiler-sfc": "^3.3.4",
-    "eslint": "^8.44.0",
-    "eslint-config-airbnb-base": "^15.0.0",
-    "eslint-config-airbnb-typescript": "^17.0.0",
-    "eslint-config-prettier": "^8.8.0",
-    "eslint-plugin-import": "^2.27.5",
-    "eslint-plugin-prettier": "^4.2.1",
-    "eslint-plugin-promise": "^6.1.1",
-    "eslint-plugin-simple-import-sort": "^10.0.0",
-    "eslint-plugin-vue": "^9.15.1",
-    "eslint-plugin-vue-scoped-css": "^2.5.0",
-    "prettier": "^2.8.8",
-    "typescript": "5.0.3",
-    "unplugin-icons": "^0.16.3",
-    "unplugin-vue-components": "^0.24.1",
-    "vite": "^4.3.9",
-    "vite-plugin-prismjs": "^0.0.8",
-    "vite-plugin-windicss": "^1.9.0",
-    "vite-svg-loader": "^4.0.0",
-    "vue-eslint-parser": "^9.3.1",
-    "vue-tsc": "^1.8.3",
-    "windicss": "^3.5.6"
-  },
-  "pnpm": {
-    "overrides": {
-      "semver@<7.5.2": ">=7.5.2",
-      "postcss@<8.4.31": ">=8.4.31"
-    }
-  }
-}
diff --git a/pkgs/development/tools/continuous-integration/woodpecker/yarn.lock b/pkgs/development/tools/continuous-integration/woodpecker/yarn.lock
deleted file mode 100644
index cf7c076e748b..000000000000
--- a/pkgs/development/tools/continuous-integration/woodpecker/yarn.lock
+++ /dev/null
@@ -1,3219 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-"@aashutoshrathi/word-wrap@1.2.6":
-  version "1.2.6"
-  resolved "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz"
-  integrity "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA=="
-
-"@ampproject/remapping@2.2.1":
-  version "2.2.1"
-  resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz"
-  integrity "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg=="
-  dependencies:
-    "@jridgewell/gen-mapping" "0.3.3"
-    "@jridgewell/trace-mapping" "0.3.18"
-
-"@antfu/install-pkg@0.1.1":
-  version "0.1.1"
-  resolved "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-0.1.1.tgz"
-  integrity "sha512-LyB/8+bSfa0DFGC06zpCEfs89/XoWZwws5ygEa5D+Xsm3OfI+aXQ86VgVG7Acyef+rSZ5HE7J8rrxzrQeM3PjQ=="
-  dependencies:
-    "execa" "5.1.1"
-    "find-up" "5.0.0"
-
-"@antfu/utils@0.7.4":
-  version "0.7.4"
-  resolved "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.4.tgz"
-  integrity "sha512-qe8Nmh9rYI/HIspLSTwtbMFPj6dISG6+dJnOguTlPNXtCvS2uezdxscVBb7/3DrmNbQK49TDqpkSQ1chbRGdpQ=="
-
-"@babel/code-frame@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz"
-  integrity "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ=="
-  dependencies:
-    "@babel/highlight" "7.22.5"
-
-"@babel/compat-data@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.5.tgz"
-  integrity "sha512-4Jc/YuIaYqKnDDz892kPIledykKg12Aw1PYX5i/TY28anJtacvM1Rrr8wbieB9GfEJwlzqT0hUEao0CxEebiDA=="
-
-"@babel/core@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/core/-/core-7.22.5.tgz"
-  integrity "sha512-SBuTAjg91A3eKOvD+bPEz3LlhHZRNu1nFOVts9lzDJTXshHTjII0BAtDS3Y2DAkdZdDKWVZGVwkDfc4Clxn1dg=="
-  dependencies:
-    "@ampproject/remapping" "2.2.1"
-    "@babel/code-frame" "7.22.5"
-    "@babel/generator" "7.22.5"
-    "@babel/helper-compilation-targets" "7.22.5"
-    "@babel/helper-module-transforms" "7.22.5"
-    "@babel/helpers" "7.22.5"
-    "@babel/parser" "7.22.5"
-    "@babel/template" "7.22.5"
-    "@babel/traverse" "7.22.5"
-    "@babel/types" "7.22.5"
-    "convert-source-map" "1.9.0"
-    "debug" "4.3.4"
-    "gensync" "1.0.0-beta.2"
-    "json5" "2.2.3"
-    "semver" "7.5.3"
-
-"@babel/generator@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.22.5.tgz"
-  integrity "sha512-+lcUbnTRhd0jOewtFSedLyiPsD5tswKkbgcezOqqWFUVNEwoUTlpPOBmvhG7OXWLR4jMdv0czPGH5XbflnD1EA=="
-  dependencies:
-    "@babel/types" "7.22.5"
-    "@jridgewell/gen-mapping" "0.3.3"
-    "@jridgewell/trace-mapping" "0.3.18"
-    "jsesc" "2.5.2"
-
-"@babel/helper-compilation-targets@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.5.tgz"
-  integrity "sha512-Ji+ywpHeuqxB8WDxraCiqR0xfhYjiDE/e6k7FuIaANnoOFxAHskHChz4vA1mJC9Lbm01s1PVAGhQY4FUKSkGZw=="
-  dependencies:
-    "@babel/compat-data" "7.22.5"
-    "@babel/core" "7.22.5"
-    "@babel/helper-validator-option" "7.22.5"
-    "browserslist" "4.21.9"
-    "lru-cache" "5.1.1"
-    "semver" "7.5.3"
-
-"@babel/helper-environment-visitor@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz"
-  integrity "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q=="
-
-"@babel/helper-function-name@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz"
-  integrity "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ=="
-  dependencies:
-    "@babel/template" "7.22.5"
-    "@babel/types" "7.22.5"
-
-"@babel/helper-hoist-variables@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz"
-  integrity "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw=="
-  dependencies:
-    "@babel/types" "7.22.5"
-
-"@babel/helper-module-imports@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz"
-  integrity "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg=="
-  dependencies:
-    "@babel/types" "7.22.5"
-
-"@babel/helper-module-transforms@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.5.tgz"
-  integrity "sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw=="
-  dependencies:
-    "@babel/helper-environment-visitor" "7.22.5"
-    "@babel/helper-module-imports" "7.22.5"
-    "@babel/helper-simple-access" "7.22.5"
-    "@babel/helper-split-export-declaration" "7.22.5"
-    "@babel/helper-validator-identifier" "7.22.5"
-    "@babel/template" "7.22.5"
-    "@babel/traverse" "7.22.5"
-    "@babel/types" "7.22.5"
-
-"@babel/helper-simple-access@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz"
-  integrity "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w=="
-  dependencies:
-    "@babel/types" "7.22.5"
-
-"@babel/helper-split-export-declaration@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.5.tgz"
-  integrity "sha512-thqK5QFghPKWLhAV321lxF95yCg2K3Ob5yw+M3VHWfdia0IkPXUtoLH8x/6Fh486QUvzhb8YOWHChTVen2/PoQ=="
-  dependencies:
-    "@babel/types" "7.22.5"
-
-"@babel/helper-string-parser@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz"
-  integrity "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw=="
-
-"@babel/helper-validator-identifier@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz"
-  integrity "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ=="
-
-"@babel/helper-validator-option@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz"
-  integrity "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw=="
-
-"@babel/helpers@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.5.tgz"
-  integrity "sha512-pSXRmfE1vzcUIDFQcSGA5Mr+GxBV9oiRKDuDxXvWQQBCh8HoIjs/2DlDB7H8smac1IVrB9/xdXj2N3Wol9Cr+Q=="
-  dependencies:
-    "@babel/template" "7.22.5"
-    "@babel/traverse" "7.22.5"
-    "@babel/types" "7.22.5"
-
-"@babel/highlight@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz"
-  integrity "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw=="
-  dependencies:
-    "@babel/helper-validator-identifier" "7.22.5"
-    "chalk" "2.4.2"
-    "js-tokens" "4.0.0"
-
-"@babel/parser@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.22.5.tgz"
-  integrity "sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q=="
-  dependencies:
-    "@babel/types" "7.22.5"
-
-"@babel/template@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz"
-  integrity "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw=="
-  dependencies:
-    "@babel/code-frame" "7.22.5"
-    "@babel/parser" "7.22.5"
-    "@babel/types" "7.22.5"
-
-"@babel/traverse@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.5.tgz"
-  integrity "sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ=="
-  dependencies:
-    "@babel/code-frame" "7.22.5"
-    "@babel/generator" "7.22.5"
-    "@babel/helper-environment-visitor" "7.22.5"
-    "@babel/helper-function-name" "7.22.5"
-    "@babel/helper-hoist-variables" "7.22.5"
-    "@babel/helper-split-export-declaration" "7.22.5"
-    "@babel/parser" "7.22.5"
-    "@babel/types" "7.22.5"
-    "debug" "4.3.4"
-    "globals" "11.12.0"
-
-"@babel/types@7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz"
-  integrity "sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA=="
-  dependencies:
-    "@babel/helper-string-parser" "7.22.5"
-    "@babel/helper-validator-identifier" "7.22.5"
-    "to-fast-properties" "2.0.0"
-
-"@esbuild/android-arm64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz"
-  integrity "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA=="
-
-"@esbuild/android-arm@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz"
-  integrity "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A=="
-
-"@esbuild/android-x64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz"
-  integrity "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww=="
-
-"@esbuild/darwin-arm64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz"
-  integrity "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg=="
-
-"@esbuild/darwin-x64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz"
-  integrity "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw=="
-
-"@esbuild/freebsd-arm64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz"
-  integrity "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ=="
-
-"@esbuild/freebsd-x64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz"
-  integrity "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ=="
-
-"@esbuild/linux-arm64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz"
-  integrity "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg=="
-
-"@esbuild/linux-arm@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz"
-  integrity "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA=="
-
-"@esbuild/linux-ia32@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz"
-  integrity "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ=="
-
-"@esbuild/linux-loong64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz"
-  integrity "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ=="
-
-"@esbuild/linux-mips64el@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz"
-  integrity "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A=="
-
-"@esbuild/linux-ppc64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz"
-  integrity "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg=="
-
-"@esbuild/linux-riscv64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz"
-  integrity "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA=="
-
-"@esbuild/linux-s390x@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz"
-  integrity "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q=="
-
-"@esbuild/linux-x64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz"
-  integrity "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw=="
-
-"@esbuild/netbsd-x64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz"
-  integrity "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q=="
-
-"@esbuild/openbsd-x64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz"
-  integrity "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g=="
-
-"@esbuild/sunos-x64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz"
-  integrity "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg=="
-
-"@esbuild/win32-arm64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz"
-  integrity "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag=="
-
-"@esbuild/win32-ia32@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz"
-  integrity "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw=="
-
-"@esbuild/win32-x64@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz"
-  integrity "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA=="
-
-"@eslint-community/eslint-utils@4.4.0":
-  version "4.4.0"
-  resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz"
-  integrity "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA=="
-  dependencies:
-    "eslint" "8.44.0"
-    "eslint-visitor-keys" "3.4.1"
-
-"@eslint-community/regexpp@4.5.1":
-  version "4.5.1"
-  resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz"
-  integrity "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ=="
-
-"@eslint/eslintrc@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz"
-  integrity "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A=="
-  dependencies:
-    "ajv" "6.12.6"
-    "debug" "4.3.4"
-    "espree" "9.6.0"
-    "globals" "13.20.0"
-    "ignore" "5.2.4"
-    "import-fresh" "3.3.0"
-    "js-yaml" "4.1.0"
-    "minimatch" "3.1.2"
-    "strip-json-comments" "3.1.1"
-
-"@eslint/js@8.44.0":
-  version "8.44.0"
-  resolved "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz"
-  integrity "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw=="
-
-"@floating-ui/core@1.3.1":
-  version "1.3.1"
-  resolved "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz"
-  integrity "sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g=="
-
-"@floating-ui/dom@1.1.1":
-  version "1.1.1"
-  resolved "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.1.1.tgz"
-  integrity "sha512-TpIO93+DIujg3g7SykEAGZMDtbJRrmnYRCNYSjJlvIbGhBjRSNTLVbNeDQBrzy9qDgUbiWdc7KA0uZHZ2tJmiw=="
-  dependencies:
-    "@floating-ui/core" "1.3.1"
-
-"@humanwhocodes/config-array@0.11.10":
-  version "0.11.10"
-  resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz"
-  integrity "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ=="
-  dependencies:
-    "@humanwhocodes/object-schema" "1.2.1"
-    "debug" "4.3.4"
-    "minimatch" "3.1.2"
-
-"@humanwhocodes/module-importer@1.0.1":
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz"
-  integrity "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA=="
-
-"@humanwhocodes/object-schema@1.2.1":
-  version "1.2.1"
-  resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz"
-  integrity "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA=="
-
-"@iconify/json@^2.2.85", "@iconify/json@2.2.85":
-  version "2.2.85"
-  resolved "https://registry.npmjs.org/@iconify/json/-/json-2.2.85.tgz"
-  integrity "sha512-T72zjZlpP311ftbdzpOFbRCictazlrX1xR8lLu3swVvFo22b/SZNBN4r0cv+e+eVNZvMxhF/cFww2fkaZ3m7Pg=="
-  dependencies:
-    "@iconify/types" "2.0.0"
-    "pathe" "1.1.1"
-
-"@iconify/types@2.0.0":
-  version "2.0.0"
-  resolved "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz"
-  integrity "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg=="
-
-"@iconify/utils@2.1.7":
-  version "2.1.7"
-  resolved "https://registry.npmjs.org/@iconify/utils/-/utils-2.1.7.tgz"
-  integrity "sha512-P8S3z/L1LcV4Qem9AoCfVAaTFGySEMzFEY4CHZLkfRj0Fv9LiR+AwjDgrDrzyI93U2L2mg9JHsbTJ52mF8suNw=="
-  dependencies:
-    "@antfu/install-pkg" "0.1.1"
-    "@antfu/utils" "0.7.4"
-    "@iconify/types" "2.0.0"
-    "debug" "4.3.4"
-    "kolorist" "1.8.0"
-    "local-pkg" "0.4.3"
-
-"@intlify/bundle-utils@5.5.0":
-  version "5.5.0"
-  resolved "https://registry.npmjs.org/@intlify/bundle-utils/-/bundle-utils-5.5.0.tgz"
-  integrity "sha512-k5xe8oAoPXiH6unXvyyyCRbq+LtLn1tSi/6r5f6mF+MsX7mcOMtgYbyAQINsjFrf7EDu5Pg4BY00VWSt8bI9XQ=="
-  dependencies:
-    "@intlify/message-compiler" "9.3.0-beta.17"
-    "@intlify/shared" "9.3.0-beta.17"
-    "acorn" "8.9.0"
-    "escodegen" "2.1.0"
-    "estree-walker" "2.0.2"
-    "jsonc-eslint-parser" "1.4.1"
-    "magic-string" "0.30.0"
-    "source-map" "0.6.1"
-    "vue-i18n" "9.2.2"
-    "yaml-eslint-parser" "0.3.2"
-
-"@intlify/core-base@9.2.2":
-  version "9.2.2"
-  resolved "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.2.2.tgz"
-  integrity "sha512-JjUpQtNfn+joMbrXvpR4hTF8iJQ2sEFzzK3KIESOx+f+uwIjgw20igOyaIdhfsVVBCds8ZM64MoeNSx+PHQMkA=="
-  dependencies:
-    "@intlify/devtools-if" "9.2.2"
-    "@intlify/message-compiler" "9.2.2"
-    "@intlify/shared" "9.2.2"
-    "@intlify/vue-devtools" "9.2.2"
-
-"@intlify/devtools-if@9.2.2":
-  version "9.2.2"
-  resolved "https://registry.npmjs.org/@intlify/devtools-if/-/devtools-if-9.2.2.tgz"
-  integrity "sha512-4ttr/FNO29w+kBbU7HZ/U0Lzuh2cRDhP8UlWOtV9ERcjHzuyXVZmjyleESK6eVP60tGC9QtQW9yZE+JeRhDHkg=="
-  dependencies:
-    "@intlify/shared" "9.2.2"
-
-"@intlify/message-compiler@9.2.2":
-  version "9.2.2"
-  resolved "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.2.2.tgz"
-  integrity "sha512-IUrQW7byAKN2fMBe8z6sK6riG1pue95e5jfokn8hA5Q3Bqy4MBJ5lJAofUsawQJYHeoPJ7svMDyBaVJ4d0GTtA=="
-  dependencies:
-    "@intlify/shared" "9.2.2"
-    "source-map" "0.6.1"
-
-"@intlify/message-compiler@9.3.0-beta.17":
-  version "9.3.0-beta.17"
-  resolved "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.3.0-beta.17.tgz"
-  integrity "sha512-i7hvVIRk1Ax2uKa9xLRJCT57to08OhFMhFXXjWN07rmx5pWQYQ23MfX1xgggv9drnWTNhqEiD+u4EJeHoS5+Ww=="
-  dependencies:
-    "@intlify/shared" "9.3.0-beta.17"
-    "source-map" "0.6.1"
-
-"@intlify/shared@9.2.2":
-  version "9.2.2"
-  resolved "https://registry.npmjs.org/@intlify/shared/-/shared-9.2.2.tgz"
-  integrity "sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q=="
-
-"@intlify/shared@9.3.0-beta.17":
-  version "9.3.0-beta.17"
-  resolved "https://registry.npmjs.org/@intlify/shared/-/shared-9.3.0-beta.17.tgz"
-  integrity "sha512-mscf7RQsUTOil35jTij4KGW1RC9SWQjYScwLxP53Ns6g24iEd5HN7ksbt9O6FvTmlQuX77u+MXpBdfJsGqizLQ=="
-
-"@intlify/unplugin-vue-i18n@^0.10.1", "@intlify/unplugin-vue-i18n@0.10.1":
-  version "0.10.1"
-  resolved "https://registry.npmjs.org/@intlify/unplugin-vue-i18n/-/unplugin-vue-i18n-0.10.1.tgz"
-  integrity "sha512-9ZzE0ddlDO06Xzg25JPiNbx6PJPDho5k/Np+uL9fJRZEKq2TxT3c+ZK+Pec6j0ybhhVXeda8/yE3tPUf4SOXZQ=="
-  dependencies:
-    "@intlify/bundle-utils" "5.5.0"
-    "@intlify/shared" "9.3.0-beta.17"
-    "@rollup/pluginutils" "5.0.2"
-    "@vue/compiler-sfc" "3.3.4"
-    "debug" "4.3.4"
-    "fast-glob" "3.3.0"
-    "js-yaml" "4.1.0"
-    "json5" "2.2.3"
-    "pathe" "1.1.1"
-    "picocolors" "1.0.0"
-    "source-map" "0.6.1"
-    "unplugin" "1.3.1"
-    "vue-i18n" "9.2.2"
-
-"@intlify/vue-devtools@9.2.2":
-  version "9.2.2"
-  resolved "https://registry.npmjs.org/@intlify/vue-devtools/-/vue-devtools-9.2.2.tgz"
-  integrity "sha512-+dUyqyCHWHb/UcvY1MlIpO87munedm3Gn6E9WWYdWrMuYLcoIoOEVDWSS8xSwtlPU+kA+MEQTP6Q1iI/ocusJg=="
-  dependencies:
-    "@intlify/core-base" "9.2.2"
-    "@intlify/shared" "9.2.2"
-
-"@jridgewell/gen-mapping@0.3.3":
-  version "0.3.3"
-  resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz"
-  integrity "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ=="
-  dependencies:
-    "@jridgewell/set-array" "1.1.2"
-    "@jridgewell/sourcemap-codec" "1.4.15"
-    "@jridgewell/trace-mapping" "0.3.18"
-
-"@jridgewell/resolve-uri@3.1.0":
-  version "3.1.0"
-  resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz"
-  integrity "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w=="
-
-"@jridgewell/set-array@1.1.2":
-  version "1.1.2"
-  resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz"
-  integrity "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw=="
-
-"@jridgewell/sourcemap-codec@1.4.14":
-  version "1.4.14"
-  resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz"
-  integrity "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw=="
-
-"@jridgewell/sourcemap-codec@1.4.15":
-  version "1.4.15"
-  resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz"
-  integrity "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
-
-"@jridgewell/trace-mapping@0.3.18":
-  version "0.3.18"
-  resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz"
-  integrity "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA=="
-  dependencies:
-    "@jridgewell/resolve-uri" "3.1.0"
-    "@jridgewell/sourcemap-codec" "1.4.14"
-
-"@kyvg/vue3-notification@^2.9.1", "@kyvg/vue3-notification@2.9.1":
-  version "2.9.1"
-  resolved "https://registry.npmjs.org/@kyvg/vue3-notification/-/vue3-notification-2.9.1.tgz"
-  integrity "sha512-FsY8g25tQetr3etnarxHtCeNFKssH8sheFu13LyL2JJmOOel437QqKV5n4RBDDDTIo55iKgIVYXeojliXYdEhw=="
-  dependencies:
-    "vue" "3.3.4"
-
-"@nodelib/fs.scandir@2.1.5":
-  version "2.1.5"
-  resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz"
-  integrity "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g=="
-  dependencies:
-    "@nodelib/fs.stat" "2.0.5"
-    "run-parallel" "1.2.0"
-
-"@nodelib/fs.stat@2.0.5":
-  version "2.0.5"
-  resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz"
-  integrity "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A=="
-
-"@nodelib/fs.walk@1.2.8":
-  version "1.2.8"
-  resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz"
-  integrity "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg=="
-  dependencies:
-    "@nodelib/fs.scandir" "2.1.5"
-    "fastq" "1.15.0"
-
-"@rollup/pluginutils@5.0.2":
-  version "5.0.2"
-  resolved "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.2.tgz"
-  integrity "sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA=="
-  dependencies:
-    "@types/estree" "1.0.1"
-    "estree-walker" "2.0.2"
-    "picomatch" "2.3.1"
-
-"@trysound/sax@0.2.0":
-  version "0.2.0"
-  resolved "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz"
-  integrity "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA=="
-
-"@types/estree@1.0.1":
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz"
-  integrity "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA=="
-
-"@types/humanize-duration@^3.27.1", "@types/humanize-duration@3.27.1":
-  version "3.27.1"
-  resolved "https://registry.npmjs.org/@types/humanize-duration/-/humanize-duration-3.27.1.tgz"
-  integrity "sha512-K3e+NZlpCKd6Bd/EIdqjFJRFHbrq5TzPPLwREk5Iv/YoIjQrs6ljdAUCo+Lb2xFlGNOjGSE0dqsVD19cZL137w=="
-
-"@types/javascript-time-ago@^2.0.3", "@types/javascript-time-ago@2.0.3":
-  version "2.0.3"
-  resolved "https://registry.npmjs.org/@types/javascript-time-ago/-/javascript-time-ago-2.0.3.tgz"
-  integrity "sha512-G6SdYh6gHxgCTU0s4cMIRHwRO4p3f7jQSZbDPfUOZpUAG1od3rTjT0e8rxGThUiTTWQHwpBRws8eHO8D2QqfkA=="
-
-"@types/json-schema@7.0.12":
-  version "7.0.12"
-  resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz"
-  integrity "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA=="
-
-"@types/json5@0.0.29":
-  version "0.0.29"
-  resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz"
-  integrity "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ=="
-
-"@types/lodash@^4.14.195", "@types/lodash@4.14.195":
-  version "4.14.195"
-  resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.195.tgz"
-  integrity "sha512-Hwx9EUgdwf2GLarOjQp5ZH8ZmblzcbTBC2wtQWNKARBSxM9ezRIAUpeDTgoQRAFB0+8CNWXVA9+MaSOzOF3nPg=="
-
-"@types/node-emoji@^1.8.2", "@types/node-emoji@1.8.2":
-  version "1.8.2"
-  resolved "https://registry.npmjs.org/@types/node-emoji/-/node-emoji-1.8.2.tgz"
-  integrity "sha512-PfF1qL/9veo8BSHLV84C9ORNr3lHSlnWJ6yU8OdNufoftajeWHTLVbGHvp2B7e7DPDS9gMs6cfeSsqo5rqSitg=="
-
-"@types/node@^18.16.19", "@types/node@18.16.19":
-  version "18.16.19"
-  resolved "https://registry.npmjs.org/@types/node/-/node-18.16.19.tgz"
-  integrity "sha512-IXl7o+R9iti9eBW4Wg2hx1xQDig183jj7YLn8F7udNceyfkbn1ZxmzZXuak20gR40D7pIkIY1kYGx5VIGbaHKA=="
-
-"@types/prismjs@^1.26.0", "@types/prismjs@1.26.0":
-  version "1.26.0"
-  resolved "https://registry.npmjs.org/@types/prismjs/-/prismjs-1.26.0.tgz"
-  integrity "sha512-ZTaqn/qSqUuAq1YwvOFQfVW1AR/oQJlLSZVustdjwI+GZ8kr0MSHBj0tsXPW1EqHubx50gtBEjbPGsdZwQwCjQ=="
-
-"@types/semver@7.5.0":
-  version "7.5.0"
-  resolved "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz"
-  integrity "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw=="
-
-"@types/web-bluetooth@0.0.16":
-  version "0.0.16"
-  resolved "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz"
-  integrity "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ=="
-
-"@typescript-eslint/eslint-plugin@^5.60.1", "@typescript-eslint/eslint-plugin@5.60.1":
-  version "5.60.1"
-  resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.60.1.tgz"
-  integrity "sha512-KSWsVvsJsLJv3c4e73y/Bzt7OpqMCADUO846bHcuWYSYM19bldbAeDv7dYyV0jwkbMfJ2XdlzwjhXtuD7OY6bw=="
-  dependencies:
-    "@eslint-community/regexpp" "4.5.1"
-    "@typescript-eslint/parser" "5.60.1"
-    "@typescript-eslint/scope-manager" "5.60.1"
-    "@typescript-eslint/type-utils" "5.60.1"
-    "@typescript-eslint/utils" "5.60.1"
-    "debug" "4.3.4"
-    "eslint" "8.44.0"
-    "grapheme-splitter" "1.0.4"
-    "ignore" "5.2.4"
-    "natural-compare-lite" "1.4.0"
-    "semver" "7.5.3"
-    "tsutils" "3.21.0"
-    "typescript" "5.0.3"
-
-"@typescript-eslint/parser@^5.60.1", "@typescript-eslint/parser@5.60.1":
-  version "5.60.1"
-  resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.60.1.tgz"
-  integrity "sha512-pHWlc3alg2oSMGwsU/Is8hbm3XFbcrb6P5wIxcQW9NsYBfnrubl/GhVVD/Jm/t8HXhA2WncoIRfBtnCgRGV96Q=="
-  dependencies:
-    "@typescript-eslint/scope-manager" "5.60.1"
-    "@typescript-eslint/types" "5.60.1"
-    "@typescript-eslint/typescript-estree" "5.60.1"
-    "debug" "4.3.4"
-    "eslint" "8.44.0"
-    "typescript" "5.0.3"
-
-"@typescript-eslint/scope-manager@5.60.1":
-  version "5.60.1"
-  resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.60.1.tgz"
-  integrity "sha512-Dn/LnN7fEoRD+KspEOV0xDMynEmR3iSHdgNsarlXNLGGtcUok8L4N71dxUgt3YvlO8si7E+BJ5Fe3wb5yUw7DQ=="
-  dependencies:
-    "@typescript-eslint/types" "5.60.1"
-    "@typescript-eslint/visitor-keys" "5.60.1"
-
-"@typescript-eslint/type-utils@5.60.1":
-  version "5.60.1"
-  resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.60.1.tgz"
-  integrity "sha512-vN6UztYqIu05nu7JqwQGzQKUJctzs3/Hg7E2Yx8rz9J+4LgtIDFWjjl1gm3pycH0P3mHAcEUBd23LVgfrsTR8A=="
-  dependencies:
-    "@typescript-eslint/typescript-estree" "5.60.1"
-    "@typescript-eslint/utils" "5.60.1"
-    "debug" "4.3.4"
-    "eslint" "8.44.0"
-    "tsutils" "3.21.0"
-    "typescript" "5.0.3"
-
-"@typescript-eslint/types@5.60.1":
-  version "5.60.1"
-  resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.60.1.tgz"
-  integrity "sha512-zDcDx5fccU8BA0IDZc71bAtYIcG9PowaOwaD8rjYbqwK7dpe/UMQl3inJ4UtUK42nOCT41jTSCwg76E62JpMcg=="
-
-"@typescript-eslint/typescript-estree@5.60.1":
-  version "5.60.1"
-  resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.60.1.tgz"
-  integrity "sha512-hkX70J9+2M2ZT6fhti5Q2FoU9zb+GeZK2SLP1WZlvUDqdMbEKhexZODD1WodNRyO8eS+4nScvT0dts8IdaBzfw=="
-  dependencies:
-    "@typescript-eslint/types" "5.60.1"
-    "@typescript-eslint/visitor-keys" "5.60.1"
-    "debug" "4.3.4"
-    "globby" "11.1.0"
-    "is-glob" "4.0.3"
-    "semver" "7.5.3"
-    "tsutils" "3.21.0"
-    "typescript" "5.0.3"
-
-"@typescript-eslint/utils@5.60.1":
-  version "5.60.1"
-  resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.60.1.tgz"
-  integrity "sha512-tiJ7FFdFQOWssFa3gqb94Ilexyw0JVxj6vBzaSpfN/8IhoKkDuSAenUKvsSHw2A/TMpJb26izIszTXaqygkvpQ=="
-  dependencies:
-    "@eslint-community/eslint-utils" "4.4.0"
-    "@types/json-schema" "7.0.12"
-    "@types/semver" "7.5.0"
-    "@typescript-eslint/scope-manager" "5.60.1"
-    "@typescript-eslint/types" "5.60.1"
-    "@typescript-eslint/typescript-estree" "5.60.1"
-    "eslint" "8.44.0"
-    "eslint-scope" "5.1.1"
-    "semver" "7.5.3"
-
-"@typescript-eslint/visitor-keys@5.60.1":
-  version "5.60.1"
-  resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.60.1.tgz"
-  integrity "sha512-xEYIxKcultP6E/RMKqube11pGjXH1DCo60mQoWhVYyKfLkwbIVVjYxmOenNMxILx0TjCujPTjjnTIVzm09TXIw=="
-  dependencies:
-    "@typescript-eslint/types" "5.60.1"
-    "eslint-visitor-keys" "3.4.1"
-
-"@vitejs/plugin-vue@^4.2.3", "@vitejs/plugin-vue@4.2.3":
-  version "4.2.3"
-  resolved "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.2.3.tgz"
-  integrity "sha512-R6JDUfiZbJA9cMiguQ7jxALsgiprjBeHL5ikpXfJCH62pPHtI+JdJ5xWj6Ev73yXSlYl86+blXn1kZHQ7uElxw=="
-  dependencies:
-    "vite" "4.3.9"
-    "vue" "3.3.4"
-
-"@volar/language-core@1.7.10":
-  version "1.7.10"
-  resolved "https://registry.npmjs.org/@volar/language-core/-/language-core-1.7.10.tgz"
-  integrity "sha512-18Gmth5M0UI3hDDqhZngjMnb6WCslcfglkOdepRIhGxRYe7xR7DRRzciisYDMZsvOQxDYme+uaohg0dKUxLV2Q=="
-  dependencies:
-    "@volar/source-map" "1.7.10"
-
-"@volar/source-map@1.7.10":
-  version "1.7.10"
-  resolved "https://registry.npmjs.org/@volar/source-map/-/source-map-1.7.10.tgz"
-  integrity "sha512-FBpLEOKJpRxeh2nYbw1mTI5sZOPXYU8LlsCz6xuBY3yNtAizDTTIZtBHe1V8BaMpoSMgRysZe4gVxMEi3rDGVA=="
-  dependencies:
-    "muggle-string" "0.3.1"
-
-"@volar/typescript@1.7.10":
-  version "1.7.10"
-  resolved "https://registry.npmjs.org/@volar/typescript/-/typescript-1.7.10.tgz"
-  integrity "sha512-yqIov4wndLU3GE1iE25bU5W6T+P+exPePcE1dFPPBKzQIBki1KvmdQN5jBlJp3Wo+wp7UIxa/RsdNkXT+iFBjg=="
-  dependencies:
-    "@volar/language-core" "1.7.10"
-
-"@vue/compiler-core@3.3.4":
-  version "3.3.4"
-  resolved "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz"
-  integrity "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g=="
-  dependencies:
-    "@babel/parser" "7.22.5"
-    "@vue/shared" "3.3.4"
-    "estree-walker" "2.0.2"
-    "source-map-js" "1.0.2"
-
-"@vue/compiler-dom@3.3.4":
-  version "3.3.4"
-  resolved "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz"
-  integrity "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w=="
-  dependencies:
-    "@vue/compiler-core" "3.3.4"
-    "@vue/shared" "3.3.4"
-
-"@vue/compiler-sfc@^3.3.4", "@vue/compiler-sfc@3.3.4":
-  version "3.3.4"
-  resolved "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz"
-  integrity "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ=="
-  dependencies:
-    "@babel/parser" "7.22.5"
-    "@vue/compiler-core" "3.3.4"
-    "@vue/compiler-dom" "3.3.4"
-    "@vue/compiler-ssr" "3.3.4"
-    "@vue/reactivity-transform" "3.3.4"
-    "@vue/shared" "3.3.4"
-    "estree-walker" "2.0.2"
-    "magic-string" "0.30.0"
-    "postcss" "8.4.31"
-    "source-map-js" "1.0.2"
-
-"@vue/compiler-ssr@3.3.4":
-  version "3.3.4"
-  resolved "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz"
-  integrity "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ=="
-  dependencies:
-    "@vue/compiler-dom" "3.3.4"
-    "@vue/shared" "3.3.4"
-
-"@vue/devtools-api@6.5.0":
-  version "6.5.0"
-  resolved "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.0.tgz"
-  integrity "sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q=="
-
-"@vue/language-core@1.8.3":
-  version "1.8.3"
-  resolved "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.3.tgz"
-  integrity "sha512-AzhvMYoQkK/tg8CpAAttO19kx1zjS3+weYIr2AhlH/M5HebVzfftQoq4jZNFifjq+hyLKi8j9FiDMS8oqA89+A=="
-  dependencies:
-    "@volar/language-core" "1.7.10"
-    "@volar/source-map" "1.7.10"
-    "@vue/compiler-dom" "3.3.4"
-    "@vue/reactivity" "3.3.4"
-    "@vue/shared" "3.3.4"
-    "minimatch" "9.0.2"
-    "muggle-string" "0.3.1"
-    "typescript" "5.0.3"
-    "vue-template-compiler" "2.7.14"
-
-"@vue/reactivity-transform@3.3.4":
-  version "3.3.4"
-  resolved "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz"
-  integrity "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw=="
-  dependencies:
-    "@babel/parser" "7.22.5"
-    "@vue/compiler-core" "3.3.4"
-    "@vue/shared" "3.3.4"
-    "estree-walker" "2.0.2"
-    "magic-string" "0.30.0"
-
-"@vue/reactivity@3.3.4":
-  version "3.3.4"
-  resolved "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.4.tgz"
-  integrity "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ=="
-  dependencies:
-    "@vue/shared" "3.3.4"
-
-"@vue/runtime-core@3.3.4":
-  version "3.3.4"
-  resolved "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.4.tgz"
-  integrity "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA=="
-  dependencies:
-    "@vue/reactivity" "3.3.4"
-    "@vue/shared" "3.3.4"
-
-"@vue/runtime-dom@3.3.4":
-  version "3.3.4"
-  resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz"
-  integrity "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ=="
-  dependencies:
-    "@vue/runtime-core" "3.3.4"
-    "@vue/shared" "3.3.4"
-    "csstype" "3.1.2"
-
-"@vue/server-renderer@3.3.4":
-  version "3.3.4"
-  resolved "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.4.tgz"
-  integrity "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ=="
-  dependencies:
-    "@vue/compiler-ssr" "3.3.4"
-    "@vue/shared" "3.3.4"
-    "vue" "3.3.4"
-
-"@vue/shared@3.3.4":
-  version "3.3.4"
-  resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz"
-  integrity "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
-
-"@vue/typescript@1.8.3":
-  version "1.8.3"
-  resolved "https://registry.npmjs.org/@vue/typescript/-/typescript-1.8.3.tgz"
-  integrity "sha512-6bdgSnIFpRYHlt70pHmnmNksPU00bfXgqAISeaNz3W6d2cH0OTfH8h/IhligQ82sJIhsuyfftQJ5518ZuKIhtA=="
-  dependencies:
-    "@volar/typescript" "1.7.10"
-    "@vue/language-core" "1.8.3"
-
-"@vueuse/core@^9.13.0", "@vueuse/core@9.13.0":
-  version "9.13.0"
-  resolved "https://registry.npmjs.org/@vueuse/core/-/core-9.13.0.tgz"
-  integrity "sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw=="
-  dependencies:
-    "@types/web-bluetooth" "0.0.16"
-    "@vueuse/metadata" "9.13.0"
-    "@vueuse/shared" "9.13.0"
-    "vue-demi" "0.14.5"
-
-"@vueuse/metadata@9.13.0":
-  version "9.13.0"
-  resolved "https://registry.npmjs.org/@vueuse/metadata/-/metadata-9.13.0.tgz"
-  integrity "sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ=="
-
-"@vueuse/shared@9.13.0":
-  version "9.13.0"
-  resolved "https://registry.npmjs.org/@vueuse/shared/-/shared-9.13.0.tgz"
-  integrity "sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw=="
-  dependencies:
-    "vue-demi" "0.14.5"
-
-"@windicss/config@1.9.0":
-  version "1.9.0"
-  resolved "https://registry.npmjs.org/@windicss/config/-/config-1.9.0.tgz"
-  integrity "sha512-QO4+udbmDIgZwAi89tqUt5nGwBq3IgyELjLn83twZXiIqzOw+77ecCuM0oPSbzWmIbCqXq3wRQHd6Z1u5E/5zQ=="
-  dependencies:
-    "debug" "4.3.4"
-    "jiti" "1.18.2"
-    "windicss" "3.5.6"
-
-"@windicss/plugin-utils@1.9.0":
-  version "1.9.0"
-  resolved "https://registry.npmjs.org/@windicss/plugin-utils/-/plugin-utils-1.9.0.tgz"
-  integrity "sha512-omAacM5ExIr9XBUI2z47CyCXJBke4imJZqXW41YgHhRLbahTngbScFk5yxa6dXivDXUpUKqasOPXBJgA4bhHCg=="
-  dependencies:
-    "@antfu/utils" "0.7.4"
-    "@windicss/config" "1.9.0"
-    "debug" "4.3.4"
-    "fast-glob" "3.3.0"
-    "magic-string" "0.30.0"
-    "micromatch" "4.0.5"
-    "windicss" "3.5.6"
-
-"acorn-jsx@5.3.2":
-  version "5.3.2"
-  resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz"
-  integrity "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ=="
-  dependencies:
-    "acorn" "8.9.0"
-
-"acorn@7.4.1":
-  version "7.4.1"
-  resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz"
-  integrity "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A=="
-
-"acorn@8.9.0":
-  version "8.9.0"
-  resolved "https://registry.npmjs.org/acorn/-/acorn-8.9.0.tgz"
-  integrity "sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ=="
-
-"ajv@6.12.6":
-  version "6.12.6"
-  resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz"
-  integrity "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g=="
-  dependencies:
-    "fast-deep-equal" "3.1.3"
-    "fast-json-stable-stringify" "2.1.0"
-    "json-schema-traverse" "0.4.1"
-    "uri-js" "4.4.1"
-
-"ansi-regex@5.0.1":
-  version "5.0.1"
-  resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz"
-  integrity "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="
-
-"ansi-styles@3.2.1":
-  version "3.2.1"
-  resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz"
-  integrity "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA=="
-  dependencies:
-    "color-convert" "1.9.3"
-
-"ansi-styles@4.3.0":
-  version "4.3.0"
-  resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
-  integrity "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="
-  dependencies:
-    "color-convert" "2.0.1"
-
-"ansi_up@^5.2.1", "ansi_up@5.2.1":
-  version "5.2.1"
-  resolved "https://registry.npmjs.org/ansi_up/-/ansi_up-5.2.1.tgz"
-  integrity "sha512-5bz5T/7FRmlxA37zDXhG6cAwlcZtfnmNLDJra66EEIT3kYlw5aPJdbkJEhm59D6kA4Wi5ict6u6IDYHJaQlH+g=="
-
-"anymatch@3.1.3":
-  version "3.1.3"
-  resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz"
-  integrity "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw=="
-  dependencies:
-    "normalize-path" "3.0.0"
-    "picomatch" "2.3.1"
-
-"argparse@2.0.1":
-  version "2.0.1"
-  resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz"
-  integrity "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
-
-"array-buffer-byte-length@1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz"
-  integrity "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "is-array-buffer" "3.0.2"
-
-"array-includes@3.1.6":
-  version "3.1.6"
-  resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz"
-  integrity "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "define-properties" "1.2.0"
-    "es-abstract" "1.21.2"
-    "get-intrinsic" "1.2.1"
-    "is-string" "1.0.7"
-
-"array-union@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz"
-  integrity "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw=="
-
-"array.prototype.flat@1.3.1":
-  version "1.3.1"
-  resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz"
-  integrity "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "define-properties" "1.2.0"
-    "es-abstract" "1.21.2"
-    "es-shim-unscopables" "1.0.0"
-
-"array.prototype.flatmap@1.3.1":
-  version "1.3.1"
-  resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz"
-  integrity "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "define-properties" "1.2.0"
-    "es-abstract" "1.21.2"
-    "es-shim-unscopables" "1.0.0"
-
-"atob@2.1.2":
-  version "2.1.2"
-  resolved "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz"
-  integrity "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg=="
-
-"available-typed-arrays@1.0.5":
-  version "1.0.5"
-  resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz"
-  integrity "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw=="
-
-"babel-plugin-prismjs@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/babel-plugin-prismjs/-/babel-plugin-prismjs-2.1.0.tgz"
-  integrity "sha512-ehzSKYfeAz4U78zi/sfwsjDPlq0LvDKxNefcZTJ/iKBu+plsHsLqZhUeGf1+82LAcA35UZGbU6ksEx2Utphc/g=="
-  dependencies:
-    "prismjs" "1.29.0"
-
-"balanced-match@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz"
-  integrity "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
-
-"binary-extensions@2.2.0":
-  version "2.2.0"
-  resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz"
-  integrity "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA=="
-
-"boolbase@1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz"
-  integrity "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="
-
-"brace-expansion@1.1.11":
-  version "1.1.11"
-  resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz"
-  integrity "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA=="
-  dependencies:
-    "balanced-match" "1.0.2"
-    "concat-map" "0.0.1"
-
-"brace-expansion@2.0.1":
-  version "2.0.1"
-  resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz"
-  integrity "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="
-  dependencies:
-    "balanced-match" "1.0.2"
-
-"braces@3.0.2":
-  version "3.0.2"
-  resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz"
-  integrity "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A=="
-  dependencies:
-    "fill-range" "7.0.1"
-
-"browserslist@4.21.9":
-  version "4.21.9"
-  resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz"
-  integrity "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg=="
-  dependencies:
-    "caniuse-lite" "1.0.30001509"
-    "electron-to-chromium" "1.4.447"
-    "node-releases" "2.0.12"
-    "update-browserslist-db" "1.0.11"
-
-"call-bind@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz"
-  integrity "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA=="
-  dependencies:
-    "function-bind" "1.1.1"
-    "get-intrinsic" "1.2.1"
-
-"callsites@3.1.0":
-  version "3.1.0"
-  resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz"
-  integrity "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="
-
-"caniuse-lite@1.0.30001509":
-  version "1.0.30001509"
-  resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001509.tgz"
-  integrity "sha512-2uDDk+TRiTX5hMcUYT/7CSyzMZxjfGu0vAUjS2g0LSD8UoXOv0LtpH4LxGMemsiPq6LCVIUjNwVM0erkOkGCDA=="
-
-"chalk@2.4.2":
-  version "2.4.2"
-  resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz"
-  integrity "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ=="
-  dependencies:
-    "ansi-styles" "3.2.1"
-    "escape-string-regexp" "1.0.5"
-    "supports-color" "5.5.0"
-
-"chalk@4.1.2":
-  version "4.1.2"
-  resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
-  integrity "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="
-  dependencies:
-    "ansi-styles" "4.3.0"
-    "supports-color" "7.2.0"
-
-"chokidar@3.5.3":
-  version "3.5.3"
-  resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz"
-  integrity "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw=="
-  dependencies:
-    "anymatch" "3.1.3"
-    "braces" "3.0.2"
-    "glob-parent" "5.1.2"
-    "is-binary-path" "2.1.0"
-    "is-glob" "4.0.3"
-    "normalize-path" "3.0.0"
-    "readdirp" "3.6.0"
-
-"color-convert@1.9.3":
-  version "1.9.3"
-  resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz"
-  integrity "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg=="
-  dependencies:
-    "color-name" "1.1.3"
-
-"color-convert@2.0.1":
-  version "2.0.1"
-  resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
-  integrity "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="
-  dependencies:
-    "color-name" "1.1.4"
-
-"color-name@1.1.3":
-  version "1.1.3"
-  resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz"
-  integrity "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
-
-"color-name@1.1.4":
-  version "1.1.4"
-  resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
-  integrity "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
-
-"commander@7.2.0":
-  version "7.2.0"
-  resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz"
-  integrity "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw=="
-
-"concat-map@0.0.1":
-  version "0.0.1"
-  resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
-  integrity "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
-
-"confusing-browser-globals@1.0.11":
-  version "1.0.11"
-  resolved "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz"
-  integrity "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA=="
-
-"convert-source-map@1.9.0":
-  version "1.9.0"
-  resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz"
-  integrity "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A=="
-
-"cross-spawn@7.0.3":
-  version "7.0.3"
-  resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz"
-  integrity "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w=="
-  dependencies:
-    "path-key" "3.1.1"
-    "shebang-command" "2.0.0"
-    "which" "2.0.2"
-
-"css-select@5.1.0":
-  version "5.1.0"
-  resolved "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz"
-  integrity "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg=="
-  dependencies:
-    "boolbase" "1.0.0"
-    "css-what" "6.1.0"
-    "domhandler" "5.0.3"
-    "domutils" "3.1.0"
-    "nth-check" "2.1.1"
-
-"css-tree@2.2.1":
-  version "2.2.1"
-  resolved "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz"
-  integrity "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA=="
-  dependencies:
-    "mdn-data" "2.0.28"
-    "source-map-js" "1.0.2"
-
-"css-tree@2.3.1":
-  version "2.3.1"
-  resolved "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz"
-  integrity "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw=="
-  dependencies:
-    "mdn-data" "2.0.30"
-    "source-map-js" "1.0.2"
-
-"css-what@6.1.0":
-  version "6.1.0"
-  resolved "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz"
-  integrity "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw=="
-
-"css@3.0.0":
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/css/-/css-3.0.0.tgz"
-  integrity "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ=="
-  dependencies:
-    "inherits" "2.0.4"
-    "source-map" "0.6.1"
-    "source-map-resolve" "0.6.0"
-
-"cssesc@3.0.0":
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz"
-  integrity "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg=="
-
-"csso@5.0.5":
-  version "5.0.5"
-  resolved "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz"
-  integrity "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ=="
-  dependencies:
-    "css-tree" "2.2.1"
-
-"csstype@3.1.2":
-  version "3.1.2"
-  resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz"
-  integrity "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
-
-"dayjs@^1.11.9", "dayjs@1.11.9":
-  version "1.11.9"
-  resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.9.tgz"
-  integrity "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA=="
-
-"de-indent@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz"
-  integrity "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg=="
-
-"debug@3.2.7":
-  version "3.2.7"
-  resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz"
-  integrity "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ=="
-  dependencies:
-    "ms" "2.1.3"
-
-"debug@4.3.4":
-  version "4.3.4"
-  resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz"
-  integrity "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ=="
-  dependencies:
-    "ms" "2.1.2"
-
-"decode-uri-component@0.2.2":
-  version "0.2.2"
-  resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz"
-  integrity "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ=="
-
-"deep-is@0.1.4":
-  version "0.1.4"
-  resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz"
-  integrity "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ=="
-
-"define-properties@1.2.0":
-  version "1.2.0"
-  resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz"
-  integrity "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA=="
-  dependencies:
-    "has-property-descriptors" "1.0.0"
-    "object-keys" "1.1.1"
-
-"dir-glob@3.0.1":
-  version "3.0.1"
-  resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz"
-  integrity "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA=="
-  dependencies:
-    "path-type" "4.0.0"
-
-"doctrine@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz"
-  integrity "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw=="
-  dependencies:
-    "esutils" "2.0.3"
-
-"doctrine@3.0.0":
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz"
-  integrity "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w=="
-  dependencies:
-    "esutils" "2.0.3"
-
-"dom-serializer@2.0.0":
-  version "2.0.0"
-  resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz"
-  integrity "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg=="
-  dependencies:
-    "domelementtype" "2.3.0"
-    "domhandler" "5.0.3"
-    "entities" "4.5.0"
-
-"domelementtype@2.3.0":
-  version "2.3.0"
-  resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz"
-  integrity "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw=="
-
-"domhandler@5.0.3":
-  version "5.0.3"
-  resolved "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz"
-  integrity "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w=="
-  dependencies:
-    "domelementtype" "2.3.0"
-
-"domutils@3.1.0":
-  version "3.1.0"
-  resolved "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz"
-  integrity "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA=="
-  dependencies:
-    "dom-serializer" "2.0.0"
-    "domelementtype" "2.3.0"
-    "domhandler" "5.0.3"
-
-"electron-to-chromium@1.4.447":
-  version "1.4.447"
-  resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.447.tgz"
-  integrity "sha512-sxX0LXh+uL41hSJsujAN86PjhrV/6c79XmpY0TvjZStV6VxIgarf8SRkUoUTuYmFcZQTemsoqo8qXOGw5npWfw=="
-
-"entities@4.5.0":
-  version "4.5.0"
-  resolved "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz"
-  integrity "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="
-
-"es-abstract@1.21.2":
-  version "1.21.2"
-  resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz"
-  integrity "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg=="
-  dependencies:
-    "array-buffer-byte-length" "1.0.0"
-    "available-typed-arrays" "1.0.5"
-    "call-bind" "1.0.2"
-    "es-set-tostringtag" "2.0.1"
-    "es-to-primitive" "1.2.1"
-    "function.prototype.name" "1.1.5"
-    "get-intrinsic" "1.2.1"
-    "get-symbol-description" "1.0.0"
-    "globalthis" "1.0.3"
-    "gopd" "1.0.1"
-    "has" "1.0.3"
-    "has-property-descriptors" "1.0.0"
-    "has-proto" "1.0.1"
-    "has-symbols" "1.0.3"
-    "internal-slot" "1.0.5"
-    "is-array-buffer" "3.0.2"
-    "is-callable" "1.2.7"
-    "is-negative-zero" "2.0.2"
-    "is-regex" "1.1.4"
-    "is-shared-array-buffer" "1.0.2"
-    "is-string" "1.0.7"
-    "is-typed-array" "1.1.10"
-    "is-weakref" "1.0.2"
-    "object-inspect" "1.12.3"
-    "object-keys" "1.1.1"
-    "object.assign" "4.1.4"
-    "regexp.prototype.flags" "1.5.0"
-    "safe-regex-test" "1.0.0"
-    "string.prototype.trim" "1.2.7"
-    "string.prototype.trimend" "1.0.6"
-    "string.prototype.trimstart" "1.0.6"
-    "typed-array-length" "1.0.4"
-    "unbox-primitive" "1.0.2"
-    "which-typed-array" "1.1.9"
-
-"es-set-tostringtag@2.0.1":
-  version "2.0.1"
-  resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz"
-  integrity "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg=="
-  dependencies:
-    "get-intrinsic" "1.2.1"
-    "has" "1.0.3"
-    "has-tostringtag" "1.0.0"
-
-"es-shim-unscopables@1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz"
-  integrity "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w=="
-  dependencies:
-    "has" "1.0.3"
-
-"es-to-primitive@1.2.1":
-  version "1.2.1"
-  resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz"
-  integrity "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA=="
-  dependencies:
-    "is-callable" "1.2.7"
-    "is-date-object" "1.0.5"
-    "is-symbol" "1.0.4"
-
-"esbuild@0.17.19":
-  version "0.17.19"
-  resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz"
-  integrity "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw=="
-
-"escalade@3.1.1":
-  version "3.1.1"
-  resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz"
-  integrity "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw=="
-
-"escape-string-regexp@1.0.5":
-  version "1.0.5"
-  resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz"
-  integrity "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg=="
-
-"escape-string-regexp@4.0.0":
-  version "4.0.0"
-  resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz"
-  integrity "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="
-
-"escodegen@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz"
-  integrity "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w=="
-  dependencies:
-    "esprima" "4.0.1"
-    "estraverse" "5.3.0"
-    "esutils" "2.0.3"
-
-"eslint-config-airbnb-base@^15.0.0", "eslint-config-airbnb-base@15.0.0":
-  version "15.0.0"
-  resolved "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz"
-  integrity "sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig=="
-  dependencies:
-    "confusing-browser-globals" "1.0.11"
-    "eslint" "8.44.0"
-    "eslint-plugin-import" "2.27.5"
-    "object.assign" "4.1.4"
-    "object.entries" "1.1.6"
-    "semver" "7.5.3"
-
-"eslint-config-airbnb-typescript@^17.0.0", "eslint-config-airbnb-typescript@17.0.0":
-  version "17.0.0"
-  resolved "https://registry.npmjs.org/eslint-config-airbnb-typescript/-/eslint-config-airbnb-typescript-17.0.0.tgz"
-  integrity "sha512-elNiuzD0kPAPTXjFWg+lE24nMdHMtuxgYoD30OyMD6yrW1AhFZPAg27VX7d3tzOErw+dgJTNWfRSDqEcXb4V0g=="
-  dependencies:
-    "@typescript-eslint/eslint-plugin" "5.60.1"
-    "@typescript-eslint/parser" "5.60.1"
-    "eslint" "8.44.0"
-    "eslint-config-airbnb-base" "15.0.0"
-    "eslint-plugin-import" "2.27.5"
-
-"eslint-config-prettier@^8.8.0", "eslint-config-prettier@8.8.0":
-  version "8.8.0"
-  resolved "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.8.0.tgz"
-  integrity "sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA=="
-  dependencies:
-    "eslint" "8.44.0"
-
-"eslint-import-resolver-node@0.3.7":
-  version "0.3.7"
-  resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz"
-  integrity "sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA=="
-  dependencies:
-    "debug" "3.2.7"
-    "is-core-module" "2.12.1"
-    "resolve" "1.22.2"
-
-"eslint-module-utils@2.8.0":
-  version "2.8.0"
-  resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz"
-  integrity "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw=="
-  dependencies:
-    "@typescript-eslint/parser" "5.60.1"
-    "debug" "3.2.7"
-    "eslint" "8.44.0"
-    "eslint-import-resolver-node" "0.3.7"
-
-"eslint-plugin-import@^2.27.5", "eslint-plugin-import@2.27.5":
-  version "2.27.5"
-  resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz"
-  integrity "sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow=="
-  dependencies:
-    "@typescript-eslint/parser" "5.60.1"
-    "array-includes" "3.1.6"
-    "array.prototype.flat" "1.3.1"
-    "array.prototype.flatmap" "1.3.1"
-    "debug" "3.2.7"
-    "doctrine" "2.1.0"
-    "eslint" "8.44.0"
-    "eslint-import-resolver-node" "0.3.7"
-    "eslint-module-utils" "2.8.0"
-    "has" "1.0.3"
-    "is-core-module" "2.12.1"
-    "is-glob" "4.0.3"
-    "minimatch" "3.1.2"
-    "object.values" "1.1.6"
-    "resolve" "1.22.2"
-    "semver" "7.5.3"
-    "tsconfig-paths" "3.14.2"
-
-"eslint-plugin-prettier@^4.2.1", "eslint-plugin-prettier@4.2.1":
-  version "4.2.1"
-  resolved "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz"
-  integrity "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ=="
-  dependencies:
-    "eslint" "8.44.0"
-    "eslint-config-prettier" "8.8.0"
-    "prettier" "2.8.8"
-    "prettier-linter-helpers" "1.0.0"
-
-"eslint-plugin-promise@^6.1.1", "eslint-plugin-promise@6.1.1":
-  version "6.1.1"
-  resolved "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.1.1.tgz"
-  integrity "sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig=="
-  dependencies:
-    "eslint" "8.44.0"
-
-"eslint-plugin-simple-import-sort@^10.0.0", "eslint-plugin-simple-import-sort@10.0.0":
-  version "10.0.0"
-  resolved "https://registry.npmjs.org/eslint-plugin-simple-import-sort/-/eslint-plugin-simple-import-sort-10.0.0.tgz"
-  integrity "sha512-AeTvO9UCMSNzIHRkg8S6c3RPy5YEwKWSQPx3DYghLedo2ZQxowPFLGDN1AZ2evfg6r6mjBSZSLxLFsWSu3acsw=="
-  dependencies:
-    "eslint" "8.44.0"
-
-"eslint-plugin-vue-scoped-css@^2.5.0", "eslint-plugin-vue-scoped-css@2.5.0":
-  version "2.5.0"
-  resolved "https://registry.npmjs.org/eslint-plugin-vue-scoped-css/-/eslint-plugin-vue-scoped-css-2.5.0.tgz"
-  integrity "sha512-vR+raYNE1aQ69lS1lZGiKoz8rXFI3MWf2fxrfns/XCQ0XT5sIguhDtQS+9JmUQJClenLDEe2CQx7P+eeSdF4cA=="
-  dependencies:
-    "eslint" "8.44.0"
-    "eslint-utils" "3.0.0"
-    "lodash" "4.17.21"
-    "postcss" "8.4.31"
-    "postcss-safe-parser" "6.0.0"
-    "postcss-scss" "4.0.6"
-    "postcss-selector-parser" "6.0.13"
-    "postcss-styl" "0.12.3"
-    "vue-eslint-parser" "9.3.1"
-
-"eslint-plugin-vue@^9.15.1", "eslint-plugin-vue@9.15.1":
-  version "9.15.1"
-  resolved "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.15.1.tgz"
-  integrity "sha512-CJE/oZOslvmAR9hf8SClTdQ9JLweghT6JCBQNrT2Iel1uVw0W0OLJxzvPd6CxmABKCvLrtyDnqGV37O7KQv6+A=="
-  dependencies:
-    "@eslint-community/eslint-utils" "4.4.0"
-    "eslint" "8.44.0"
-    "natural-compare" "1.4.0"
-    "nth-check" "2.1.1"
-    "postcss-selector-parser" "6.0.13"
-    "semver" "7.5.3"
-    "vue-eslint-parser" "9.3.1"
-    "xml-name-validator" "4.0.0"
-
-"eslint-scope@5.1.1":
-  version "5.1.1"
-  resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz"
-  integrity "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw=="
-  dependencies:
-    "esrecurse" "4.3.0"
-    "estraverse" "4.3.0"
-
-"eslint-scope@7.2.0":
-  version "7.2.0"
-  resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz"
-  integrity "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw=="
-  dependencies:
-    "esrecurse" "4.3.0"
-    "estraverse" "5.3.0"
-
-"eslint-utils@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz"
-  integrity "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg=="
-  dependencies:
-    "eslint-visitor-keys" "1.3.0"
-
-"eslint-utils@3.0.0":
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz"
-  integrity "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA=="
-  dependencies:
-    "eslint" "8.44.0"
-    "eslint-visitor-keys" "2.1.0"
-
-"eslint-visitor-keys@1.3.0":
-  version "1.3.0"
-  resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz"
-  integrity "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ=="
-
-"eslint-visitor-keys@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz"
-  integrity "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw=="
-
-"eslint-visitor-keys@3.4.1":
-  version "3.4.1"
-  resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz"
-  integrity "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA=="
-
-"eslint@^8.44.0", "eslint@8.44.0":
-  version "8.44.0"
-  resolved "https://registry.npmjs.org/eslint/-/eslint-8.44.0.tgz"
-  integrity "sha512-0wpHoUbDUHgNCyvFB5aXLiQVfK9B0at6gUvzy83k4kAsQ/u769TQDX6iKC+aO4upIHO9WSaA3QoXYQDHbNwf1A=="
-  dependencies:
-    "@eslint-community/eslint-utils" "4.4.0"
-    "@eslint-community/regexpp" "4.5.1"
-    "@eslint/eslintrc" "2.1.0"
-    "@eslint/js" "8.44.0"
-    "@humanwhocodes/config-array" "0.11.10"
-    "@humanwhocodes/module-importer" "1.0.1"
-    "@nodelib/fs.walk" "1.2.8"
-    "ajv" "6.12.6"
-    "chalk" "4.1.2"
-    "cross-spawn" "7.0.3"
-    "debug" "4.3.4"
-    "doctrine" "3.0.0"
-    "escape-string-regexp" "4.0.0"
-    "eslint-scope" "7.2.0"
-    "eslint-visitor-keys" "3.4.1"
-    "espree" "9.6.0"
-    "esquery" "1.5.0"
-    "esutils" "2.0.3"
-    "fast-deep-equal" "3.1.3"
-    "file-entry-cache" "6.0.1"
-    "find-up" "5.0.0"
-    "glob-parent" "6.0.2"
-    "globals" "13.20.0"
-    "graphemer" "1.4.0"
-    "ignore" "5.2.4"
-    "import-fresh" "3.3.0"
-    "imurmurhash" "0.1.4"
-    "is-glob" "4.0.3"
-    "is-path-inside" "3.0.3"
-    "js-yaml" "4.1.0"
-    "json-stable-stringify-without-jsonify" "1.0.1"
-    "levn" "0.4.1"
-    "lodash.merge" "4.6.2"
-    "minimatch" "3.1.2"
-    "natural-compare" "1.4.0"
-    "optionator" "0.9.3"
-    "strip-ansi" "6.0.1"
-    "strip-json-comments" "3.1.1"
-    "text-table" "0.2.0"
-
-"espree@6.2.1":
-  version "6.2.1"
-  resolved "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz"
-  integrity "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw=="
-  dependencies:
-    "acorn" "7.4.1"
-    "acorn-jsx" "5.3.2"
-    "eslint-visitor-keys" "1.3.0"
-
-"espree@9.6.0":
-  version "9.6.0"
-  resolved "https://registry.npmjs.org/espree/-/espree-9.6.0.tgz"
-  integrity "sha512-1FH/IiruXZ84tpUlm0aCUEwMl2Ho5ilqVh0VvQXw+byAz/4SAciyHLlfmL5WYqsvD38oymdUwBss0LtK8m4s/A=="
-  dependencies:
-    "acorn" "8.9.0"
-    "acorn-jsx" "5.3.2"
-    "eslint-visitor-keys" "3.4.1"
-
-"esprima@4.0.1":
-  version "4.0.1"
-  resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz"
-  integrity "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A=="
-
-"esquery@1.5.0":
-  version "1.5.0"
-  resolved "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz"
-  integrity "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg=="
-  dependencies:
-    "estraverse" "5.3.0"
-
-"esrecurse@4.3.0":
-  version "4.3.0"
-  resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz"
-  integrity "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag=="
-  dependencies:
-    "estraverse" "5.3.0"
-
-"estraverse@4.3.0":
-  version "4.3.0"
-  resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz"
-  integrity "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw=="
-
-"estraverse@5.3.0":
-  version "5.3.0"
-  resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz"
-  integrity "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA=="
-
-"estree-walker@2.0.2":
-  version "2.0.2"
-  resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz"
-  integrity "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
-
-"esutils@2.0.3":
-  version "2.0.3"
-  resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz"
-  integrity "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g=="
-
-"execa@5.1.1":
-  version "5.1.1"
-  resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz"
-  integrity "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg=="
-  dependencies:
-    "cross-spawn" "7.0.3"
-    "get-stream" "6.0.1"
-    "human-signals" "2.1.0"
-    "is-stream" "2.0.1"
-    "merge-stream" "2.0.0"
-    "npm-run-path" "4.0.1"
-    "onetime" "5.1.2"
-    "signal-exit" "3.0.7"
-    "strip-final-newline" "2.0.0"
-
-"fast-deep-equal@3.1.3":
-  version "3.1.3"
-  resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz"
-  integrity "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
-
-"fast-diff@1.3.0":
-  version "1.3.0"
-  resolved "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz"
-  integrity "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw=="
-
-"fast-glob@3.3.0":
-  version "3.3.0"
-  resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz"
-  integrity "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA=="
-  dependencies:
-    "@nodelib/fs.stat" "2.0.5"
-    "@nodelib/fs.walk" "1.2.8"
-    "glob-parent" "5.1.2"
-    "merge2" "1.4.1"
-    "micromatch" "4.0.5"
-
-"fast-json-stable-stringify@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz"
-  integrity "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
-
-"fast-levenshtein@2.0.6":
-  version "2.0.6"
-  resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz"
-  integrity "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw=="
-
-"fastq@1.15.0":
-  version "1.15.0"
-  resolved "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz"
-  integrity "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw=="
-  dependencies:
-    "reusify" "1.0.4"
-
-"file-entry-cache@6.0.1":
-  version "6.0.1"
-  resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz"
-  integrity "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg=="
-  dependencies:
-    "flat-cache" "3.0.4"
-
-"fill-range@7.0.1":
-  version "7.0.1"
-  resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz"
-  integrity "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ=="
-  dependencies:
-    "to-regex-range" "5.0.1"
-
-"find-up@5.0.0":
-  version "5.0.0"
-  resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz"
-  integrity "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng=="
-  dependencies:
-    "locate-path" "6.0.0"
-    "path-exists" "4.0.0"
-
-"flat-cache@3.0.4":
-  version "3.0.4"
-  resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz"
-  integrity "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg=="
-  dependencies:
-    "flatted" "3.2.7"
-    "rimraf" "3.0.2"
-
-"flatted@3.2.7":
-  version "3.2.7"
-  resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz"
-  integrity "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ=="
-
-"floating-vue@^2.0.0-beta.24", "floating-vue@2.0.0-beta.24":
-  version "2.0.0-beta.24"
-  resolved "https://registry.npmjs.org/floating-vue/-/floating-vue-2.0.0-beta.24.tgz"
-  integrity "sha512-URSzP6YXaF4u1oZ9XGL8Sn8puuM7ivp5jkOUrpy5Q1mfo9BfGppJOn+ierTmsSUfJEeHBae8KT7r5DeI3vQIEw=="
-  dependencies:
-    "@floating-ui/dom" "1.1.1"
-    "vue" "3.3.4"
-    "vue-resize" "2.0.0-alpha.1"
-
-"for-each@0.3.3":
-  version "0.3.3"
-  resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz"
-  integrity "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw=="
-  dependencies:
-    "is-callable" "1.2.7"
-
-"fs.realpath@1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
-  integrity "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
-
-"fsevents@2.3.2":
-  version "2.3.2"
-  resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz"
-  integrity "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA=="
-
-"function-bind@1.1.1":
-  version "1.1.1"
-  resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz"
-  integrity "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
-
-"function.prototype.name@1.1.5":
-  version "1.1.5"
-  resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz"
-  integrity "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "define-properties" "1.2.0"
-    "es-abstract" "1.21.2"
-    "functions-have-names" "1.2.3"
-
-"functions-have-names@1.2.3":
-  version "1.2.3"
-  resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz"
-  integrity "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ=="
-
-"fuse.js@^6.6.2", "fuse.js@6.6.2":
-  version "6.6.2"
-  resolved "https://registry.npmjs.org/fuse.js/-/fuse.js-6.6.2.tgz"
-  integrity "sha512-cJaJkxCCxC8qIIcPBF9yGxY0W/tVZS3uEISDxhYIdtk8OL93pe+6Zj7LjCqVV4dzbqcriOZ+kQ/NE4RXZHsIGA=="
-
-"gensync@1.0.0-beta.2":
-  version "1.0.0-beta.2"
-  resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz"
-  integrity "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg=="
-
-"get-intrinsic@1.2.1":
-  version "1.2.1"
-  resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz"
-  integrity "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw=="
-  dependencies:
-    "function-bind" "1.1.1"
-    "has" "1.0.3"
-    "has-proto" "1.0.1"
-    "has-symbols" "1.0.3"
-
-"get-stream@6.0.1":
-  version "6.0.1"
-  resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz"
-  integrity "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg=="
-
-"get-symbol-description@1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz"
-  integrity "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "get-intrinsic" "1.2.1"
-
-"glob-parent@5.1.2":
-  version "5.1.2"
-  resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz"
-  integrity "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow=="
-  dependencies:
-    "is-glob" "4.0.3"
-
-"glob-parent@6.0.2":
-  version "6.0.2"
-  resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz"
-  integrity "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A=="
-  dependencies:
-    "is-glob" "4.0.3"
-
-"glob@7.2.3":
-  version "7.2.3"
-  resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz"
-  integrity "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q=="
-  dependencies:
-    "fs.realpath" "1.0.0"
-    "inflight" "1.0.6"
-    "inherits" "2.0.4"
-    "minimatch" "3.1.2"
-    "once" "1.4.0"
-    "path-is-absolute" "1.0.1"
-
-"globals@11.12.0":
-  version "11.12.0"
-  resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz"
-  integrity "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA=="
-
-"globals@13.20.0":
-  version "13.20.0"
-  resolved "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz"
-  integrity "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ=="
-  dependencies:
-    "type-fest" "0.20.2"
-
-"globalthis@1.0.3":
-  version "1.0.3"
-  resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz"
-  integrity "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA=="
-  dependencies:
-    "define-properties" "1.2.0"
-
-"globby@11.1.0":
-  version "11.1.0"
-  resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz"
-  integrity "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g=="
-  dependencies:
-    "array-union" "2.1.0"
-    "dir-glob" "3.0.1"
-    "fast-glob" "3.3.0"
-    "ignore" "5.2.4"
-    "merge2" "1.4.1"
-    "slash" "3.0.0"
-
-"gopd@1.0.1":
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz"
-  integrity "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA=="
-  dependencies:
-    "get-intrinsic" "1.2.1"
-
-"grapheme-splitter@1.0.4":
-  version "1.0.4"
-  resolved "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz"
-  integrity "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ=="
-
-"graphemer@1.4.0":
-  version "1.4.0"
-  resolved "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz"
-  integrity "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag=="
-
-"has-bigints@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz"
-  integrity "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ=="
-
-"has-flag@3.0.0":
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz"
-  integrity "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw=="
-
-"has-flag@4.0.0":
-  version "4.0.0"
-  resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
-  integrity "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
-
-"has-property-descriptors@1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz"
-  integrity "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ=="
-  dependencies:
-    "get-intrinsic" "1.2.1"
-
-"has-proto@1.0.1":
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz"
-  integrity "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg=="
-
-"has-symbols@1.0.3":
-  version "1.0.3"
-  resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz"
-  integrity "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A=="
-
-"has-tostringtag@1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz"
-  integrity "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ=="
-  dependencies:
-    "has-symbols" "1.0.3"
-
-"has@1.0.3":
-  version "1.0.3"
-  resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz"
-  integrity "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw=="
-  dependencies:
-    "function-bind" "1.1.1"
-
-"he@1.2.0":
-  version "1.2.0"
-  resolved "https://registry.npmjs.org/he/-/he-1.2.0.tgz"
-  integrity "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw=="
-
-"human-signals@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz"
-  integrity "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw=="
-
-"humanize-duration@^3.28.0", "humanize-duration@3.28.0":
-  version "3.28.0"
-  resolved "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.28.0.tgz"
-  integrity "sha512-jMAxraOOmHuPbffLVDKkEKi/NeG8dMqP8lGRd6Tbf7JgAeG33jjgPWDbXXU7ypCI0o+oNKJFgbSB9FKVdWNI2A=="
-
-"ignore@5.2.4":
-  version "5.2.4"
-  resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz"
-  integrity "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ=="
-
-"import-fresh@3.3.0":
-  version "3.3.0"
-  resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz"
-  integrity "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw=="
-  dependencies:
-    "parent-module" "1.0.1"
-    "resolve-from" "4.0.0"
-
-"imurmurhash@0.1.4":
-  version "0.1.4"
-  resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz"
-  integrity "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA=="
-
-"inflight@1.0.6":
-  version "1.0.6"
-  resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz"
-  integrity "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA=="
-  dependencies:
-    "once" "1.4.0"
-    "wrappy" "1.0.2"
-
-"inherits@2.0.4":
-  version "2.0.4"
-  resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz"
-  integrity "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
-
-"internal-slot@1.0.5":
-  version "1.0.5"
-  resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz"
-  integrity "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ=="
-  dependencies:
-    "get-intrinsic" "1.2.1"
-    "has" "1.0.3"
-    "side-channel" "1.0.4"
-
-"is-array-buffer@3.0.2":
-  version "3.0.2"
-  resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz"
-  integrity "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "get-intrinsic" "1.2.1"
-    "is-typed-array" "1.1.10"
-
-"is-bigint@1.0.4":
-  version "1.0.4"
-  resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz"
-  integrity "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg=="
-  dependencies:
-    "has-bigints" "1.0.2"
-
-"is-binary-path@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz"
-  integrity "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw=="
-  dependencies:
-    "binary-extensions" "2.2.0"
-
-"is-boolean-object@1.1.2":
-  version "1.1.2"
-  resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz"
-  integrity "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "has-tostringtag" "1.0.0"
-
-"is-callable@1.2.7":
-  version "1.2.7"
-  resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz"
-  integrity "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA=="
-
-"is-core-module@2.12.1":
-  version "2.12.1"
-  resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz"
-  integrity "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg=="
-  dependencies:
-    "has" "1.0.3"
-
-"is-date-object@1.0.5":
-  version "1.0.5"
-  resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz"
-  integrity "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ=="
-  dependencies:
-    "has-tostringtag" "1.0.0"
-
-"is-extglob@2.1.1":
-  version "2.1.1"
-  resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz"
-  integrity "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="
-
-"is-glob@4.0.3":
-  version "4.0.3"
-  resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz"
-  integrity "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg=="
-  dependencies:
-    "is-extglob" "2.1.1"
-
-"is-negative-zero@2.0.2":
-  version "2.0.2"
-  resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz"
-  integrity "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA=="
-
-"is-number-object@1.0.7":
-  version "1.0.7"
-  resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz"
-  integrity "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ=="
-  dependencies:
-    "has-tostringtag" "1.0.0"
-
-"is-number@7.0.0":
-  version "7.0.0"
-  resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz"
-  integrity "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
-
-"is-path-inside@3.0.3":
-  version "3.0.3"
-  resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz"
-  integrity "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ=="
-
-"is-regex@1.1.4":
-  version "1.1.4"
-  resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz"
-  integrity "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "has-tostringtag" "1.0.0"
-
-"is-shared-array-buffer@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz"
-  integrity "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA=="
-  dependencies:
-    "call-bind" "1.0.2"
-
-"is-stream@2.0.1":
-  version "2.0.1"
-  resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz"
-  integrity "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg=="
-
-"is-string@1.0.7":
-  version "1.0.7"
-  resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz"
-  integrity "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg=="
-  dependencies:
-    "has-tostringtag" "1.0.0"
-
-"is-symbol@1.0.4":
-  version "1.0.4"
-  resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz"
-  integrity "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg=="
-  dependencies:
-    "has-symbols" "1.0.3"
-
-"is-typed-array@1.1.10":
-  version "1.1.10"
-  resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz"
-  integrity "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A=="
-  dependencies:
-    "available-typed-arrays" "1.0.5"
-    "call-bind" "1.0.2"
-    "for-each" "0.3.3"
-    "gopd" "1.0.1"
-    "has-tostringtag" "1.0.0"
-
-"is-weakref@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz"
-  integrity "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ=="
-  dependencies:
-    "call-bind" "1.0.2"
-
-"isexe@2.0.0":
-  version "2.0.0"
-  resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz"
-  integrity "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
-
-"javascript-time-ago@^2.5.9", "javascript-time-ago@2.5.9":
-  version "2.5.9"
-  resolved "https://registry.npmjs.org/javascript-time-ago/-/javascript-time-ago-2.5.9.tgz"
-  integrity "sha512-pQ8mNco/9g9TqWXWWjP0EWl6i/lAQScOyEeXy5AB+f7MfLSdgyV9BJhiOD1zrIac/lrxPYOWNbyl/IW8CW5n0A=="
-  dependencies:
-    "relative-time-format" "1.1.6"
-
-"jiti@1.18.2":
-  version "1.18.2"
-  resolved "https://registry.npmjs.org/jiti/-/jiti-1.18.2.tgz"
-  integrity "sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg=="
-
-"js-tokens@4.0.0":
-  version "4.0.0"
-  resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz"
-  integrity "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
-
-"js-yaml@4.1.0":
-  version "4.1.0"
-  resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz"
-  integrity "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA=="
-  dependencies:
-    "argparse" "2.0.1"
-
-"jsesc@2.5.2":
-  version "2.5.2"
-  resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz"
-  integrity "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA=="
-
-"json-schema-traverse@0.4.1":
-  version "0.4.1"
-  resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz"
-  integrity "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
-
-"json-stable-stringify-without-jsonify@1.0.1":
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz"
-  integrity "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw=="
-
-"json5@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz"
-  integrity "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA=="
-  dependencies:
-    "minimist" "1.2.8"
-
-"json5@2.2.3":
-  version "2.2.3"
-  resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz"
-  integrity "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg=="
-
-"jsonc-eslint-parser@1.4.1":
-  version "1.4.1"
-  resolved "https://registry.npmjs.org/jsonc-eslint-parser/-/jsonc-eslint-parser-1.4.1.tgz"
-  integrity "sha512-hXBrvsR1rdjmB2kQmUjf1rEIa+TqHBGMge8pwi++C+Si1ad7EjZrJcpgwym+QGK/pqTx+K7keFAtLlVNdLRJOg=="
-  dependencies:
-    "acorn" "7.4.1"
-    "eslint-utils" "2.1.0"
-    "eslint-visitor-keys" "1.3.0"
-    "espree" "6.2.1"
-    "semver" "7.5.3"
-
-"kolorist@1.8.0":
-  version "1.8.0"
-  resolved "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz"
-  integrity "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ=="
-
-"levn@0.4.1":
-  version "0.4.1"
-  resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz"
-  integrity "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ=="
-  dependencies:
-    "prelude-ls" "1.2.1"
-    "type-check" "0.4.0"
-
-"local-pkg@0.4.3":
-  version "0.4.3"
-  resolved "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz"
-  integrity "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g=="
-
-"locate-path@6.0.0":
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz"
-  integrity "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw=="
-  dependencies:
-    "p-locate" "5.0.0"
-
-"lodash.merge@4.6.2":
-  version "4.6.2"
-  resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz"
-  integrity "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
-
-"lodash.sortedlastindex@4.1.0":
-  version "4.1.0"
-  resolved "https://registry.npmjs.org/lodash.sortedlastindex/-/lodash.sortedlastindex-4.1.0.tgz"
-  integrity "sha512-s8xEQdsp2Tu5zUqVdFSe9C0kR8YlnAJYLqMdkh+pIRBRxF6/apWseLdHl3/+jv2I61dhPwtI/Ff+EqvCpc+N8w=="
-
-"lodash@^4.17.21", "lodash@4.17.21":
-  version "4.17.21"
-  resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
-  integrity "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
-
-"lru-cache@5.1.1":
-  version "5.1.1"
-  resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz"
-  integrity "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w=="
-  dependencies:
-    "yallist" "3.1.1"
-
-"lru-cache@6.0.0":
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz"
-  integrity "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA=="
-  dependencies:
-    "yallist" "4.0.0"
-
-"magic-string@0.30.0":
-  version "0.30.0"
-  resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.30.0.tgz"
-  integrity "sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ=="
-  dependencies:
-    "@jridgewell/sourcemap-codec" "1.4.15"
-
-"mdn-data@2.0.28":
-  version "2.0.28"
-  resolved "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz"
-  integrity "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g=="
-
-"mdn-data@2.0.30":
-  version "2.0.30"
-  resolved "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz"
-  integrity "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA=="
-
-"merge-stream@2.0.0":
-  version "2.0.0"
-  resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz"
-  integrity "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
-
-"merge2@1.4.1":
-  version "1.4.1"
-  resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz"
-  integrity "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg=="
-
-"micromatch@4.0.5":
-  version "4.0.5"
-  resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz"
-  integrity "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA=="
-  dependencies:
-    "braces" "3.0.2"
-    "picomatch" "2.3.1"
-
-"mimic-fn@2.1.0":
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz"
-  integrity "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg=="
-
-"minimatch@3.1.2":
-  version "3.1.2"
-  resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz"
-  integrity "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw=="
-  dependencies:
-    "brace-expansion" "1.1.11"
-
-"minimatch@7.4.6":
-  version "7.4.6"
-  resolved "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz"
-  integrity "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw=="
-  dependencies:
-    "brace-expansion" "2.0.1"
-
-"minimatch@9.0.2":
-  version "9.0.2"
-  resolved "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz"
-  integrity "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg=="
-  dependencies:
-    "brace-expansion" "2.0.1"
-
-"minimist@1.2.8":
-  version "1.2.8"
-  resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz"
-  integrity "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="
-
-"ms@2.1.2":
-  version "2.1.2"
-  resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz"
-  integrity "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
-
-"ms@2.1.3":
-  version "2.1.3"
-  resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz"
-  integrity "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
-
-"muggle-string@0.3.1":
-  version "0.3.1"
-  resolved "https://registry.npmjs.org/muggle-string/-/muggle-string-0.3.1.tgz"
-  integrity "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg=="
-
-"nanoid@3.3.6":
-  version "3.3.6"
-  resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz"
-  integrity "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA=="
-
-"natural-compare-lite@1.4.0":
-  version "1.4.0"
-  resolved "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz"
-  integrity "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g=="
-
-"natural-compare@1.4.0":
-  version "1.4.0"
-  resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz"
-  integrity "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw=="
-
-"node-emoji@^1.11.0", "node-emoji@1.11.0":
-  version "1.11.0"
-  resolved "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz"
-  integrity "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A=="
-  dependencies:
-    "lodash" "4.17.21"
-
-"node-releases@2.0.12":
-  version "2.0.12"
-  resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz"
-  integrity "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ=="
-
-"normalize-path@3.0.0":
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz"
-  integrity "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="
-
-"npm-run-path@4.0.1":
-  version "4.0.1"
-  resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz"
-  integrity "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw=="
-  dependencies:
-    "path-key" "3.1.1"
-
-"nth-check@2.1.1":
-  version "2.1.1"
-  resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz"
-  integrity "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w=="
-  dependencies:
-    "boolbase" "1.0.0"
-
-"object-inspect@1.12.3":
-  version "1.12.3"
-  resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz"
-  integrity "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g=="
-
-"object-keys@1.1.1":
-  version "1.1.1"
-  resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz"
-  integrity "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA=="
-
-"object.assign@4.1.4":
-  version "4.1.4"
-  resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz"
-  integrity "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "define-properties" "1.2.0"
-    "has-symbols" "1.0.3"
-    "object-keys" "1.1.1"
-
-"object.entries@1.1.6":
-  version "1.1.6"
-  resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz"
-  integrity "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "define-properties" "1.2.0"
-    "es-abstract" "1.21.2"
-
-"object.values@1.1.6":
-  version "1.1.6"
-  resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz"
-  integrity "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "define-properties" "1.2.0"
-    "es-abstract" "1.21.2"
-
-"once@1.4.0":
-  version "1.4.0"
-  resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz"
-  integrity "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w=="
-  dependencies:
-    "wrappy" "1.0.2"
-
-"onetime@5.1.2":
-  version "5.1.2"
-  resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz"
-  integrity "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg=="
-  dependencies:
-    "mimic-fn" "2.1.0"
-
-"optionator@0.9.3":
-  version "0.9.3"
-  resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz"
-  integrity "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg=="
-  dependencies:
-    "@aashutoshrathi/word-wrap" "1.2.6"
-    "deep-is" "0.1.4"
-    "fast-levenshtein" "2.0.6"
-    "levn" "0.4.1"
-    "prelude-ls" "1.2.1"
-    "type-check" "0.4.0"
-
-"p-limit@3.1.0":
-  version "3.1.0"
-  resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz"
-  integrity "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ=="
-  dependencies:
-    "yocto-queue" "0.1.0"
-
-"p-locate@5.0.0":
-  version "5.0.0"
-  resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz"
-  integrity "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw=="
-  dependencies:
-    "p-limit" "3.1.0"
-
-"parent-module@1.0.1":
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz"
-  integrity "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g=="
-  dependencies:
-    "callsites" "3.1.0"
-
-"path-exists@4.0.0":
-  version "4.0.0"
-  resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz"
-  integrity "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
-
-"path-is-absolute@1.0.1":
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz"
-  integrity "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg=="
-
-"path-key@3.1.1":
-  version "3.1.1"
-  resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz"
-  integrity "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="
-
-"path-parse@1.0.7":
-  version "1.0.7"
-  resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz"
-  integrity "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
-
-"path-type@4.0.0":
-  version "4.0.0"
-  resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz"
-  integrity "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
-
-"pathe@1.1.1":
-  version "1.1.1"
-  resolved "https://registry.npmjs.org/pathe/-/pathe-1.1.1.tgz"
-  integrity "sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q=="
-
-"picocolors@1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz"
-  integrity "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
-
-"picomatch@2.3.1":
-  version "2.3.1"
-  resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz"
-  integrity "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="
-
-"pinia@^2.1.4", "pinia@2.1.4":
-  version "2.1.4"
-  resolved "https://registry.npmjs.org/pinia/-/pinia-2.1.4.tgz"
-  integrity "sha512-vYlnDu+Y/FXxv1ABo1vhjC+IbqvzUdiUC3sfDRrRyY2CQSrqqaa+iiHmqtARFxJVqWQMCJfXx1PBvFs9aJVLXQ=="
-  dependencies:
-    "@vue/devtools-api" "6.5.0"
-    "typescript" "5.0.3"
-    "vue" "3.3.4"
-    "vue-demi" "0.14.5"
-
-"postcss-safe-parser@6.0.0":
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz"
-  integrity "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ=="
-  dependencies:
-    "postcss" "8.4.31"
-
-"postcss-scss@4.0.6":
-  version "4.0.6"
-  resolved "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.6.tgz"
-  integrity "sha512-rLDPhJY4z/i4nVFZ27j9GqLxj1pwxE80eAzUNRMXtcpipFYIeowerzBgG3yJhMtObGEXidtIgbUpQ3eLDsf5OQ=="
-  dependencies:
-    "postcss" "8.4.31"
-
-"postcss-selector-parser@6.0.13":
-  version "6.0.13"
-  resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz"
-  integrity "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ=="
-  dependencies:
-    "cssesc" "3.0.0"
-    "util-deprecate" "1.0.2"
-
-"postcss-styl@0.12.3":
-  version "0.12.3"
-  resolved "https://registry.npmjs.org/postcss-styl/-/postcss-styl-0.12.3.tgz"
-  integrity "sha512-8I7Cd8sxiEITIp32xBK4K/Aj1ukX6vuWnx8oY/oAH35NfQI4OZaY5nd68Yx8HeN5S49uhQ6DL0rNk0ZBu/TaLg=="
-  dependencies:
-    "debug" "4.3.4"
-    "fast-diff" "1.3.0"
-    "lodash.sortedlastindex" "4.1.0"
-    "postcss" "8.4.31"
-    "stylus" "0.57.0"
-
-"postcss@8.4.31":
-  version "8.4.31"
-  resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz"
-  integrity "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ=="
-  dependencies:
-    "nanoid" "3.3.6"
-    "picocolors" "1.0.0"
-    "source-map-js" "1.0.2"
-
-"prelude-ls@1.2.1":
-  version "1.2.1"
-  resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz"
-  integrity "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g=="
-
-"prettier-linter-helpers@1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz"
-  integrity "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w=="
-  dependencies:
-    "fast-diff" "1.3.0"
-
-"prettier@^2.8.8", "prettier@2.8.8":
-  version "2.8.8"
-  resolved "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz"
-  integrity "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q=="
-
-"prismjs@^1.29.0", "prismjs@1.29.0":
-  version "1.29.0"
-  resolved "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz"
-  integrity "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q=="
-
-"punycode@2.3.0":
-  version "2.3.0"
-  resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz"
-  integrity "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA=="
-
-"queue-microtask@1.2.3":
-  version "1.2.3"
-  resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz"
-  integrity "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A=="
-
-"readdirp@3.6.0":
-  version "3.6.0"
-  resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz"
-  integrity "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA=="
-  dependencies:
-    "picomatch" "2.3.1"
-
-"regexp.prototype.flags@1.5.0":
-  version "1.5.0"
-  resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz"
-  integrity "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "define-properties" "1.2.0"
-    "functions-have-names" "1.2.3"
-
-"relative-time-format@1.1.6":
-  version "1.1.6"
-  resolved "https://registry.npmjs.org/relative-time-format/-/relative-time-format-1.1.6.tgz"
-  integrity "sha512-aCv3juQw4hT1/P/OrVltKWLlp15eW1GRcwP1XdxHrPdZE9MtgqFpegjnTjLhi2m2WI9MT/hQQtE+tjEWG1hgkQ=="
-
-"resolve-from@4.0.0":
-  version "4.0.0"
-  resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz"
-  integrity "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g=="
-
-"resolve@1.22.2":
-  version "1.22.2"
-  resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz"
-  integrity "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g=="
-  dependencies:
-    "is-core-module" "2.12.1"
-    "path-parse" "1.0.7"
-    "supports-preserve-symlinks-flag" "1.0.0"
-
-"reusify@1.0.4":
-  version "1.0.4"
-  resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz"
-  integrity "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw=="
-
-"rimraf@3.0.2":
-  version "3.0.2"
-  resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz"
-  integrity "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA=="
-  dependencies:
-    "glob" "7.2.3"
-
-"rollup@3.26.0":
-  version "3.26.0"
-  resolved "https://registry.npmjs.org/rollup/-/rollup-3.26.0.tgz"
-  integrity "sha512-YzJH0eunH2hr3knvF3i6IkLO/jTjAEwU4HoMUbQl4//Tnl3ou0e7P5SjxdDr8HQJdeUJShlbEHXrrnEHy1l7Yg=="
-
-"run-parallel@1.2.0":
-  version "1.2.0"
-  resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz"
-  integrity "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA=="
-  dependencies:
-    "queue-microtask" "1.2.3"
-
-"safe-regex-test@1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz"
-  integrity "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "get-intrinsic" "1.2.1"
-    "is-regex" "1.1.4"
-
-"safer-buffer@2.1.2":
-  version "2.1.2"
-  resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz"
-  integrity "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
-
-"sax@1.2.4":
-  version "1.2.4"
-  resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz"
-  integrity "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw=="
-
-"semver@7.5.3":
-  version "7.5.3"
-  resolved "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz"
-  integrity "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ=="
-  dependencies:
-    "lru-cache" "6.0.0"
-
-"shebang-command@2.0.0":
-  version "2.0.0"
-  resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz"
-  integrity "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA=="
-  dependencies:
-    "shebang-regex" "3.0.0"
-
-"shebang-regex@3.0.0":
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz"
-  integrity "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="
-
-"side-channel@1.0.4":
-  version "1.0.4"
-  resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz"
-  integrity "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "get-intrinsic" "1.2.1"
-    "object-inspect" "1.12.3"
-
-"signal-exit@3.0.7":
-  version "3.0.7"
-  resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz"
-  integrity "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
-
-"slash@3.0.0":
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz"
-  integrity "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q=="
-
-"source-map-js@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz"
-  integrity "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
-
-"source-map-resolve@0.6.0":
-  version "0.6.0"
-  resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz"
-  integrity "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w=="
-  dependencies:
-    "atob" "2.1.2"
-    "decode-uri-component" "0.2.2"
-
-"source-map@0.6.1":
-  version "0.6.1"
-  resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz"
-  integrity "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
-
-"source-map@0.7.4":
-  version "0.7.4"
-  resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz"
-  integrity "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA=="
-
-"string.prototype.trim@1.2.7":
-  version "1.2.7"
-  resolved "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz"
-  integrity "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "define-properties" "1.2.0"
-    "es-abstract" "1.21.2"
-
-"string.prototype.trimend@1.0.6":
-  version "1.0.6"
-  resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz"
-  integrity "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "define-properties" "1.2.0"
-    "es-abstract" "1.21.2"
-
-"string.prototype.trimstart@1.0.6":
-  version "1.0.6"
-  resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz"
-  integrity "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "define-properties" "1.2.0"
-    "es-abstract" "1.21.2"
-
-"strip-ansi@6.0.1":
-  version "6.0.1"
-  resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz"
-  integrity "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A=="
-  dependencies:
-    "ansi-regex" "5.0.1"
-
-"strip-bom@3.0.0":
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz"
-  integrity "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA=="
-
-"strip-final-newline@2.0.0":
-  version "2.0.0"
-  resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz"
-  integrity "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA=="
-
-"strip-json-comments@3.1.1":
-  version "3.1.1"
-  resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz"
-  integrity "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig=="
-
-"stylus@0.57.0":
-  version "0.57.0"
-  resolved "https://registry.npmjs.org/stylus/-/stylus-0.57.0.tgz"
-  integrity "sha512-yOI6G8WYfr0q8v8rRvE91wbxFU+rJPo760Va4MF6K0I6BZjO4r+xSynkvyPBP9tV1CIEUeRsiidjIs2rzb1CnQ=="
-  dependencies:
-    "css" "3.0.0"
-    "debug" "4.3.4"
-    "glob" "7.2.3"
-    "safer-buffer" "2.1.2"
-    "sax" "1.2.4"
-    "source-map" "0.7.4"
-
-"supports-color@5.5.0":
-  version "5.5.0"
-  resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz"
-  integrity "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow=="
-  dependencies:
-    "has-flag" "3.0.0"
-
-"supports-color@7.2.0":
-  version "7.2.0"
-  resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
-  integrity "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="
-  dependencies:
-    "has-flag" "4.0.0"
-
-"supports-preserve-symlinks-flag@1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz"
-  integrity "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
-
-"svgo@3.0.2":
-  version "3.0.2"
-  resolved "https://registry.npmjs.org/svgo/-/svgo-3.0.2.tgz"
-  integrity "sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ=="
-  dependencies:
-    "@trysound/sax" "0.2.0"
-    "commander" "7.2.0"
-    "css-select" "5.1.0"
-    "css-tree" "2.3.1"
-    "csso" "5.0.5"
-    "picocolors" "1.0.0"
-
-"text-table@0.2.0":
-  version "0.2.0"
-  resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz"
-  integrity "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw=="
-
-"to-fast-properties@2.0.0":
-  version "2.0.0"
-  resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz"
-  integrity "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog=="
-
-"to-regex-range@5.0.1":
-  version "5.0.1"
-  resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz"
-  integrity "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ=="
-  dependencies:
-    "is-number" "7.0.0"
-
-"tsconfig-paths@3.14.2":
-  version "3.14.2"
-  resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz"
-  integrity "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g=="
-  dependencies:
-    "@types/json5" "0.0.29"
-    "json5" "1.0.2"
-    "minimist" "1.2.8"
-    "strip-bom" "3.0.0"
-
-"tslib@1.14.1":
-  version "1.14.1"
-  resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz"
-  integrity "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
-
-"tsutils@3.21.0":
-  version "3.21.0"
-  resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz"
-  integrity "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA=="
-  dependencies:
-    "tslib" "1.14.1"
-    "typescript" "5.0.3"
-
-"type-check@0.4.0":
-  version "0.4.0"
-  resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz"
-  integrity "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew=="
-  dependencies:
-    "prelude-ls" "1.2.1"
-
-"type-fest@0.20.2":
-  version "0.20.2"
-  resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz"
-  integrity "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ=="
-
-"typed-array-length@1.0.4":
-  version "1.0.4"
-  resolved "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz"
-  integrity "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "for-each" "0.3.3"
-    "is-typed-array" "1.1.10"
-
-"typescript@5.0.3":
-  version "5.0.3"
-  resolved "https://registry.npmjs.org/typescript/-/typescript-5.0.3.tgz"
-  integrity "sha512-xv8mOEDnigb/tN9PSMTwSEqAnUvkoXMQlicOb0IUVDBSQCgBSaAAROUZYy2IcUy5qU6XajK5jjjO7TMWqBTKZA=="
-
-"unbox-primitive@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz"
-  integrity "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw=="
-  dependencies:
-    "call-bind" "1.0.2"
-    "has-bigints" "1.0.2"
-    "has-symbols" "1.0.3"
-    "which-boxed-primitive" "1.0.2"
-
-"unplugin-icons@^0.16.3", "unplugin-icons@0.16.3":
-  version "0.16.3"
-  resolved "https://registry.npmjs.org/unplugin-icons/-/unplugin-icons-0.16.3.tgz"
-  integrity "sha512-hivVVr6++WHSj6Iz+rjTa14/ALMYT+PFd2sPtTBKlQR3cdzui1VwM72TzSu94NkDm/KVncvOIiBwoHwUPeL9bg=="
-  dependencies:
-    "@antfu/install-pkg" "0.1.1"
-    "@antfu/utils" "0.7.4"
-    "@iconify/utils" "2.1.7"
-    "@vue/compiler-sfc" "3.3.4"
-    "debug" "4.3.4"
-    "kolorist" "1.8.0"
-    "local-pkg" "0.4.3"
-    "unplugin" "1.3.1"
-
-"unplugin-vue-components@^0.24.1", "unplugin-vue-components@0.24.1":
-  version "0.24.1"
-  resolved "https://registry.npmjs.org/unplugin-vue-components/-/unplugin-vue-components-0.24.1.tgz"
-  integrity "sha512-T3A8HkZoIE1Cja95xNqolwza0yD5IVlgZZ1PVAGvVCx8xthmjsv38xWRCtHtwl+rvZyL9uif42SRkDGw9aCfMA=="
-  dependencies:
-    "@antfu/utils" "0.7.4"
-    "@rollup/pluginutils" "5.0.2"
-    "chokidar" "3.5.3"
-    "debug" "4.3.4"
-    "fast-glob" "3.3.0"
-    "local-pkg" "0.4.3"
-    "magic-string" "0.30.0"
-    "minimatch" "7.4.6"
-    "resolve" "1.22.2"
-    "unplugin" "1.3.1"
-    "vue" "3.3.4"
-
-"unplugin@1.3.1":
-  version "1.3.1"
-  resolved "https://registry.npmjs.org/unplugin/-/unplugin-1.3.1.tgz"
-  integrity "sha512-h4uUTIvFBQRxUKS2Wjys6ivoeofGhxzTe2sRWlooyjHXVttcVfV/JiavNd3d4+jty0SVV0dxGw9AkY9MwiaCEw=="
-  dependencies:
-    "acorn" "8.9.0"
-    "chokidar" "3.5.3"
-    "webpack-sources" "3.2.3"
-    "webpack-virtual-modules" "0.5.0"
-
-"update-browserslist-db@1.0.11":
-  version "1.0.11"
-  resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz"
-  integrity "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA=="
-  dependencies:
-    "browserslist" "4.21.9"
-    "escalade" "3.1.1"
-    "picocolors" "1.0.0"
-
-"uri-js@4.4.1":
-  version "4.4.1"
-  resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz"
-  integrity "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg=="
-  dependencies:
-    "punycode" "2.3.0"
-
-"util-deprecate@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz"
-  integrity "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
-
-"vite-plugin-prismjs@^0.0.8", "vite-plugin-prismjs@0.0.8":
-  version "0.0.8"
-  resolved "https://registry.npmjs.org/vite-plugin-prismjs/-/vite-plugin-prismjs-0.0.8.tgz"
-  integrity "sha512-mBPPMS/hwVUArdqCtp/oajZT7iq1qwJDDCciNZ3R5+Q5tQUuUHXtDKuZHYnklPLElNbENf2FyuOtC4FrgxQRAA=="
-  dependencies:
-    "@babel/core" "7.22.5"
-    "babel-plugin-prismjs" "2.1.0"
-
-"vite-plugin-windicss@^1.9.0", "vite-plugin-windicss@1.9.0":
-  version "1.9.0"
-  resolved "https://registry.npmjs.org/vite-plugin-windicss/-/vite-plugin-windicss-1.9.0.tgz"
-  integrity "sha512-w0unPfcbVU5eaISAsFTLgIb41SLhmXoUF75Othu8NqFioe8+DEqiuvJ7/k/LRuEuvI8Rt/OKrY6cNzrB+dykaA=="
-  dependencies:
-    "@windicss/plugin-utils" "1.9.0"
-    "debug" "4.3.4"
-    "kolorist" "1.8.0"
-    "vite" "4.3.9"
-    "windicss" "3.5.6"
-
-"vite-svg-loader@^4.0.0", "vite-svg-loader@4.0.0":
-  version "4.0.0"
-  resolved "https://registry.npmjs.org/vite-svg-loader/-/vite-svg-loader-4.0.0.tgz"
-  integrity "sha512-0MMf1yzzSYlV4MGePsLVAOqXsbF5IVxbn4EEzqRnWxTQl8BJg/cfwIzfQNmNQxZp5XXwd4kyRKF1LytuHZTnqA=="
-  dependencies:
-    "@vue/compiler-sfc" "3.3.4"
-    "svgo" "3.0.2"
-
-"vite@^4.3.9", "vite@4.3.9":
-  version "4.3.9"
-  resolved "https://registry.npmjs.org/vite/-/vite-4.3.9.tgz"
-  integrity "sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg=="
-  dependencies:
-    "@types/node" "18.16.19"
-    "esbuild" "0.17.19"
-    "postcss" "8.4.31"
-    "rollup" "3.26.0"
-
-"vue-demi@0.14.5":
-  version "0.14.5"
-  resolved "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.5.tgz"
-  integrity "sha512-o9NUVpl/YlsGJ7t+xuqJKx8EBGf1quRhCiT6D/J0pfwmk9zUwYkC7yrF4SZCe6fETvSM3UNL2edcbYrSyc4QHA=="
-  dependencies:
-    "vue" "3.3.4"
-
-"vue-eslint-parser@^9.3.1", "vue-eslint-parser@9.3.1":
-  version "9.3.1"
-  resolved "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.3.1.tgz"
-  integrity "sha512-Clr85iD2XFZ3lJ52/ppmUDG/spxQu6+MAeHXjjyI4I1NUYZ9xmenQp4N0oaHJhrA8OOxltCVxMRfANGa70vU0g=="
-  dependencies:
-    "debug" "4.3.4"
-    "eslint" "8.44.0"
-    "eslint-scope" "7.2.0"
-    "eslint-visitor-keys" "3.4.1"
-    "espree" "9.6.0"
-    "esquery" "1.5.0"
-    "lodash" "4.17.21"
-    "semver" "7.5.3"
-
-"vue-i18n@^9.2.2", "vue-i18n@9.2.2":
-  version "9.2.2"
-  resolved "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.2.2.tgz"
-  integrity "sha512-yswpwtj89rTBhegUAv9Mu37LNznyu3NpyLQmozF3i1hYOhwpG8RjcjIFIIfnu+2MDZJGSZPXaKWvnQA71Yv9TQ=="
-  dependencies:
-    "@intlify/core-base" "9.2.2"
-    "@intlify/shared" "9.2.2"
-    "@intlify/vue-devtools" "9.2.2"
-    "@vue/devtools-api" "6.5.0"
-    "vue" "3.3.4"
-
-"vue-resize@2.0.0-alpha.1":
-  version "2.0.0-alpha.1"
-  resolved "https://registry.npmjs.org/vue-resize/-/vue-resize-2.0.0-alpha.1.tgz"
-  integrity "sha512-7+iqOueLU7uc9NrMfrzbG8hwMqchfVfSzpVlCMeJQe4pyibqyoifDNbKTZvwxZKDvGkB+PdFeKvnGZMoEb8esg=="
-  dependencies:
-    "vue" "3.3.4"
-
-"vue-router@^4.2.2", "vue-router@4.2.2":
-  version "4.2.2"
-  resolved "https://registry.npmjs.org/vue-router/-/vue-router-4.2.2.tgz"
-  integrity "sha512-cChBPPmAflgBGmy3tBsjeoe3f3VOSG6naKyY5pjtrqLGbNEXdzCigFUHgBvp9e3ysAtFtEx7OLqcSDh/1Cq2TQ=="
-  dependencies:
-    "@vue/devtools-api" "6.5.0"
-    "vue" "3.3.4"
-
-"vue-template-compiler@2.7.14":
-  version "2.7.14"
-  resolved "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.14.tgz"
-  integrity "sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ=="
-  dependencies:
-    "de-indent" "1.0.2"
-    "he" "1.2.0"
-
-"vue-tsc@^1.8.3", "vue-tsc@1.8.3":
-  version "1.8.3"
-  resolved "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.3.tgz"
-  integrity "sha512-Ua4DHuYxjudlhCW2nRZtaXbhIDVncRGIbDjZhHpF8Z8vklct/G/35/kAPuGNSOmq0JcvhPAe28Oa7LWaUerZVA=="
-  dependencies:
-    "@vue/language-core" "1.8.3"
-    "@vue/typescript" "1.8.3"
-    "semver" "7.5.3"
-    "typescript" "5.0.3"
-
-"vue@^3.3.4", "vue@3.3.4":
-  version "3.3.4"
-  resolved "https://registry.npmjs.org/vue/-/vue-3.3.4.tgz"
-  integrity "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw=="
-  dependencies:
-    "@vue/compiler-dom" "3.3.4"
-    "@vue/compiler-sfc" "3.3.4"
-    "@vue/runtime-dom" "3.3.4"
-    "@vue/server-renderer" "3.3.4"
-    "@vue/shared" "3.3.4"
-
-"webpack-sources@3.2.3":
-  version "3.2.3"
-  resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz"
-  integrity "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w=="
-
-"webpack-virtual-modules@0.5.0":
-  version "0.5.0"
-  resolved "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.5.0.tgz"
-  integrity "sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw=="
-
-"which-boxed-primitive@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz"
-  integrity "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg=="
-  dependencies:
-    "is-bigint" "1.0.4"
-    "is-boolean-object" "1.1.2"
-    "is-number-object" "1.0.7"
-    "is-string" "1.0.7"
-    "is-symbol" "1.0.4"
-
-"which-typed-array@1.1.9":
-  version "1.1.9"
-  resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz"
-  integrity "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA=="
-  dependencies:
-    "available-typed-arrays" "1.0.5"
-    "call-bind" "1.0.2"
-    "for-each" "0.3.3"
-    "gopd" "1.0.1"
-    "has-tostringtag" "1.0.0"
-    "is-typed-array" "1.1.10"
-
-"which@2.0.2":
-  version "2.0.2"
-  resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz"
-  integrity "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA=="
-  dependencies:
-    "isexe" "2.0.0"
-
-"windicss@^3.5.6", "windicss@3.5.6":
-  version "3.5.6"
-  resolved "https://registry.npmjs.org/windicss/-/windicss-3.5.6.tgz"
-  integrity "sha512-P1mzPEjgFMZLX0ZqfFht4fhV/FX8DTG7ERG1fBLiWvd34pTLVReS5CVsewKn9PApSgXnVfPWwvq+qUsRwpnwFA=="
-
-"wrappy@1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz"
-  integrity "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
-
-"xml-name-validator@4.0.0":
-  version "4.0.0"
-  resolved "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz"
-  integrity "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw=="
-
-"yallist@3.1.1":
-  version "3.1.1"
-  resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz"
-  integrity "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="
-
-"yallist@4.0.0":
-  version "4.0.0"
-  resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz"
-  integrity "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
-
-"yaml-eslint-parser@0.3.2":
-  version "0.3.2"
-  resolved "https://registry.npmjs.org/yaml-eslint-parser/-/yaml-eslint-parser-0.3.2.tgz"
-  integrity "sha512-32kYO6kJUuZzqte82t4M/gB6/+11WAuHiEnK7FreMo20xsCKPeFH5tDBU7iWxR7zeJpNnMXfJyXwne48D0hGrg=="
-  dependencies:
-    "eslint-visitor-keys" "1.3.0"
-    "lodash" "4.17.21"
-    "yaml" "1.10.2"
-
-"yaml@1.10.2":
-  version "1.10.2"
-  resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz"
-  integrity "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg=="
-
-"yocto-queue@0.1.0":
-  version "0.1.0"
-  resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz"
-  integrity "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q=="
diff --git a/pkgs/development/tools/database/clickhouse-backup/default.nix b/pkgs/development/tools/database/clickhouse-backup/default.nix
index 63247e3570d1..fd94c7e608b1 100644
--- a/pkgs/development/tools/database/clickhouse-backup/default.nix
+++ b/pkgs/development/tools/database/clickhouse-backup/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "clickhouse-backup";
-  version = "2.4.22";
+  version = "2.4.23";
 
   src = fetchFromGitHub {
     owner = "AlexAkulov";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-PcUcafUV+SAzs0d/xrDDL0A5MMQN5IO1UjDBuENr37E=";
+    sha256 = "sha256-6S1XJEaZE6h69KfBddkJ+sE3OfUnY1KECPKyJ2pExRU=";
   };
 
   vendorHash = "sha256-DTykJR/dMIDKL5fTzDivsRf2DIfzJcm+AN3rQHflpJo=";
diff --git a/pkgs/development/tools/database/pgweb/default.nix b/pkgs/development/tools/database/pgweb/default.nix
index affda7ff49e2..ef0f64a73a17 100644
--- a/pkgs/development/tools/database/pgweb/default.nix
+++ b/pkgs/development/tools/database/pgweb/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "pgweb";
-  version = "0.14.2";
+  version = "0.14.3";
 
   src = fetchFromGitHub {
     owner = "sosedoff";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-gM7hqFriXkcwNO+I3d138kfp1F4YsO/Qbq0NzMszkwM=";
+    hash = "sha256-We7MyKOdauf93tBihvjouEiZ4FnkvsUtfJpswK6ef7Q=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/database/sqlite-web/default.nix b/pkgs/development/tools/database/sqlite-web/default.nix
index ee333ac02744..351c5475ea0e 100644
--- a/pkgs/development/tools/database/sqlite-web/default.nix
+++ b/pkgs/development/tools/database/sqlite-web/default.nix
@@ -5,11 +5,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "sqlite-web";
-  version = "0.3.6";
+  version = "0.6.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "17pymadm063358nji70xzma64zkfv26c3pai5i1whsfp9ahqzasg";
+    sha256 = "sha256-VIbmYN6KjCRpE+kvJyBV75deYmh+zRjcQXZ2/7mseYU=";
   };
 
   propagatedBuildInputs = with python3Packages; [ flask peewee pygments ];
diff --git a/pkgs/development/tools/detekt/default.nix b/pkgs/development/tools/detekt/default.nix
index 091fef564756..ff643693daec 100644
--- a/pkgs/development/tools/detekt/default.nix
+++ b/pkgs/development/tools/detekt/default.nix
@@ -1,13 +1,13 @@
 { detekt, lib, stdenv, fetchurl, makeWrapper, jre_headless, testers }:
 stdenv.mkDerivation rec {
   pname = "detekt";
-  version = "1.23.4";
+  version = "1.23.5";
 
   jarfilename = "${pname}-${version}-executable.jar";
 
   src = fetchurl {
     url = "https://github.com/detekt/detekt/releases/download/v${version}/detekt-cli-${version}-all.jar";
-    sha256 = "sha256-Kx6I0pe7Qz4JMZeBRVdka6wfoL9uQgZjCUGInZJeAOA=";
+    sha256 = "sha256-Pz+MaZimJMCjtGPy7coi6SSE7IdAQhtp2u8YV4s7KLY=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/tools/documentation/antora/default.nix b/pkgs/development/tools/documentation/antora/default.nix
index 9a68837714af..6ac43313e962 100644
--- a/pkgs/development/tools/documentation/antora/default.nix
+++ b/pkgs/development/tools/documentation/antora/default.nix
@@ -2,16 +2,16 @@
 
 buildNpmPackage rec {
   pname = "antora";
-  version = "3.1.5";
+  version = "3.1.7";
 
   src = fetchFromGitLab {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-PCtYV5jPGFja26Dv4kXiaw8ITWR4xzVP/9hc45UWHeg=";
+    hash = "sha256-uGXXp6boS5yYsInSmkI9S0Tn85QGVp/5Fsh1u3G4oPk=";
   };
 
-  npmDepsHash = "sha256-//426AFUoJy7phqbbLdwkJvhOzcYsIumSaeAKefFsf4=";
+  npmDepsHash = "sha256-oWLRAuvWDk7w18qlDH14EE4elX5nhLKHSQANa/kXKvw=";
 
   # This is to stop tests from being ran, as some of them fail due to trying to query remote repositories
   postPatch = ''
diff --git a/pkgs/development/tools/earthly/default.nix b/pkgs/development/tools/earthly/default.nix
index 501965b18a12..2c2f83b7d595 100644
--- a/pkgs/development/tools/earthly/default.nix
+++ b/pkgs/development/tools/earthly/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "earthly";
-  version = "0.8.0";
+  version = "0.8.2";
 
   src = fetchFromGitHub {
     owner = "earthly";
     repo = "earthly";
     rev = "v${version}";
-    hash = "sha256-CB3ybV/jW1l0esSPNA6hBsceVw0UlmyDydz9dLmd3N4=";
+    hash = "sha256-FfmjQf66+oG4OmB15+hGbXVaVDtXk7koVv4aKByASR8=";
   };
 
-  vendorHash = "sha256-IU/D//ucQQIb/+M5rN7mtoVqDFmq799b6IoQfjD86Ls=";
+  vendorHash = "sha256-vfLEPP0mYpduuHkGD7u5EBjnp9oq7JhB9EvuOgO+Irs=";
   subPackages = [ "cmd/earthly" "cmd/debugger" ];
 
   CGO_ENABLED = 0;
diff --git a/pkgs/development/tools/esbuild/default.nix b/pkgs/development/tools/esbuild/default.nix
index 2f817c0cd040..75f103dec6cb 100644
--- a/pkgs/development/tools/esbuild/default.nix
+++ b/pkgs/development/tools/esbuild/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "esbuild";
-  version = "0.19.12";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "evanw";
     repo = "esbuild";
     rev = "v${version}";
-    hash = "sha256-NQ06esCSU6YPvQ4cMsi3DEFGIQGl8Ff6fhdTxUAyGvo=";
+    hash = "sha256-CJUBjDQAXSUFe37zYGbX6geeEk9goZ/aOalWDHPIZis=";
   };
 
   vendorHash = "sha256-+BfxCyg0KkDQpHt/wycy/8CTG6YBA/VJvJFhhzUnSiQ=";
diff --git a/pkgs/development/tools/faas-cli/default.nix b/pkgs/development/tools/faas-cli/default.nix
index e96315197a03..9eaadd43cedb 100644
--- a/pkgs/development/tools/faas-cli/default.nix
+++ b/pkgs/development/tools/faas-cli/default.nix
@@ -18,13 +18,13 @@ let
 in
 buildGoModule rec {
   pname = "faas-cli";
-  version = "0.16.22";
+  version = "0.16.23";
 
   src = fetchFromGitHub {
     owner = "openfaas";
     repo = "faas-cli";
     rev = version;
-    sha256 = "sha256-m9pdP+ADNPWzrs4VPcdwE7I3aiaBtSb3i1qpFxMIdM4=";
+    sha256 = "sha256-QbMwokFHaISvsNuHy/Do90bvXtwaJmie/hDLybuy2qk=";
   };
 
   vendorHash = null;
diff --git a/pkgs/development/tools/fable/default.nix b/pkgs/development/tools/fable/default.nix
index 30bf14f4fcf4..10447afe20f3 100644
--- a/pkgs/development/tools/fable/default.nix
+++ b/pkgs/development/tools/fable/default.nix
@@ -2,9 +2,9 @@
 
 buildDotnetGlobalTool {
   pname = "fable";
-  version = "4.10.0";
+  version = "4.11.0";
 
-  nugetSha256 = "sha256-qSnPb+qjF10gzP8LSvvqnAXa0tedvOMHCrVd8zTtZl0=";
+  nugetSha256 = "sha256-AOsCthGk4YiTcKjIdCE1nnADWLqfd80vPFMmo9YLGUA=";
   passthru.updateScript = ./update.sh;
 
   meta = with lib; {
diff --git a/pkgs/development/tools/glslviewer/default.nix b/pkgs/development/tools/glslviewer/default.nix
index 06016bec25b5..4be67a29e399 100644
--- a/pkgs/development/tools/glslviewer/default.nix
+++ b/pkgs/development/tools/glslviewer/default.nix
@@ -17,6 +17,7 @@ stdenv.mkDerivation rec {
 
   postPatch = ''
     sed '1i#include <cstring>' -i src/tools/text.cpp # gcc12
+    sed '8i#include <cstdint>' -i src/io/fs.cpp # gcc13
   '';
 
   nativeBuildInputs = [ pkg-config ensureNewerSourcesForZipFilesHook python3Packages.six ];
diff --git a/pkgs/development/tools/go-containerregistry/default.nix b/pkgs/development/tools/go-containerregistry/default.nix
index f5c742ce9102..a6e0d9c47681 100644
--- a/pkgs/development/tools/go-containerregistry/default.nix
+++ b/pkgs/development/tools/go-containerregistry/default.nix
@@ -4,13 +4,13 @@ let bins = [ "crane" "gcrane" ]; in
 
 buildGoModule rec {
   pname = "go-containerregistry";
-  version = "0.18.0";
+  version = "0.19.0";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-JL8OLL0dTvtk6gfzyCdQi+mSbcLZeklvQc/bC4L5+eE=";
+    sha256 = "sha256-9sKJM1QnQcGF9d5oT1YEoSeIlg0wh2VOQ6cC1QCrcgY=";
   };
   vendorHash = null;
 
diff --git a/pkgs/development/tools/goimports-reviser/default.nix b/pkgs/development/tools/goimports-reviser/default.nix
index a2edc9415926..30cf393334c9 100644
--- a/pkgs/development/tools/goimports-reviser/default.nix
+++ b/pkgs/development/tools/goimports-reviser/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "goimports-reviser";
-  version = "3.6.3";
+  version = "3.6.4";
 
   src = fetchFromGitHub {
     owner = "incu6us";
     repo = "goimports-reviser";
     rev = "v${version}";
-    hash = "sha256-wv09/Do8D05qP289g4HMxluEf7AROaJ/au35ZSVR1DQ=";
+    hash = "sha256-+GVC/qJnqWm5tsn2Y5BPafapp7ct9kqHWlDNxukEZsM=";
   };
   vendorHash = "sha256-z+FeAXPXKi653im2X2WOP1R9gRl/x7UBnndoEXoxdwA=";
 
diff --git a/pkgs/development/tools/golines/default.nix b/pkgs/development/tools/golines/default.nix
index 986e68dd634d..68ee00ecb638 100644
--- a/pkgs/development/tools/golines/default.nix
+++ b/pkgs/development/tools/golines/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "golines";
-  version = "0.11.0";
+  version = "0.12.2";
 
   src = fetchFromGitHub {
     owner = "segmentio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-2K9KAg8iSubiTbujyFGN3yggrL+EDyeUCs9OOta/19A=";
+    sha256 = "sha256-D0gI9BA0vgM1DBqwolNTfPsTCWuOGrcu5gAVFEdyVGg=";
   };
 
-  vendorHash = "sha256-rxYuzn4ezAxaeDhxd8qdOzt+CKYIh03A9zKNdzILq18=";
+  vendorHash = "sha256-jI3/m1UdZMKrS3H9jPhcVAUCjc1G/ejzHi9SCTy24ak=";
 
   meta = with lib; {
     description = "A golang formatter that fixes long lines";
diff --git a/pkgs/development/tools/gptcommit/default.nix b/pkgs/development/tools/gptcommit/default.nix
index 3b7892022b85..19d18edf1c42 100644
--- a/pkgs/development/tools/gptcommit/default.nix
+++ b/pkgs/development/tools/gptcommit/default.nix
@@ -11,7 +11,7 @@
 
 let
   pname = "gptcommit";
-  version = "0.5.14";
+  version = "0.5.16";
 in
 rustPlatform.buildRustPackage {
   inherit pname version;
@@ -20,10 +20,10 @@ rustPlatform.buildRustPackage {
     owner = "zurawiki";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-xjaFr1y2Fd7IWbJlegnIsfS5/oMJYd6QTnwp7IK17xM=";
+    hash = "sha256-JhMkK2zw3VL9o7j8DJmjY/im+GyCjfV2TJI3GDo8T8c=";
   };
 
-  cargoHash = "sha256-VZrlEJi/UPQTGFiSpZs+Do+69CY3zdqGkAnUxMYvvaw=";
+  cargoHash = "sha256-ye9MAfG3m24ofV95Kr+KTP4FEqfrsm3aTQ464hG9q08=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/tools/gqlgenc/default.nix b/pkgs/development/tools/gqlgenc/default.nix
index 07ea00756e58..700a305efa46 100644
--- a/pkgs/development/tools/gqlgenc/default.nix
+++ b/pkgs/development/tools/gqlgenc/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "gqlgenc";
-  version = "0.16.2";
+  version = "0.17.0";
 
   src = fetchFromGitHub {
     owner = "yamashou";
     repo = "gqlgenc";
     rev = "v${version}";
-    sha256 = "sha256-XNmCSkgJJ2notrv0Din4jlU9EoHJcznjEUiXQgQ5a7I=";
+    sha256 = "sha256-CkVPbMepkBpCeyRv30S6RTvBSe6BsJuit87x1S9GPMU=";
   };
 
   excludedPackages = [ "example" ];
diff --git a/pkgs/development/tools/grpc-gateway/default.nix b/pkgs/development/tools/grpc-gateway/default.nix
index b278c846343a..85f6857f5c2c 100644
--- a/pkgs/development/tools/grpc-gateway/default.nix
+++ b/pkgs/development/tools/grpc-gateway/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "grpc-gateway";
-  version = "2.19.0";
+  version = "2.19.1";
 
   src = fetchFromGitHub {
     owner = "grpc-ecosystem";
     repo = "grpc-gateway";
     rev = "v${version}";
-    sha256 = "sha256-mppN8twrOTIVK3TDQcv5fYZtXKPA34EWGPo31JxME1g=";
+    sha256 = "sha256-CdGQpQfOSimeio8v1lZ7xzE/oAS2qFyu+uN+H9i7vpo=";
   };
 
-  vendorHash = "sha256-R/V3J9vCSQppm59RCaJrDIS0Juff5htPl/GjTwhHEfQ=";
+  vendorHash = "sha256-no7kZGpf/VOuceC3J+izGFQp5aMS3b+Rn+x4BFZ2zgs=";
 
   meta = with lib; {
     description =
diff --git a/pkgs/development/tools/hcloud/default.nix b/pkgs/development/tools/hcloud/default.nix
index 51d3c6f35385..6cfebf31ec89 100644
--- a/pkgs/development/tools/hcloud/default.nix
+++ b/pkgs/development/tools/hcloud/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "hcloud";
-  version = "1.41.1";
+  version = "1.42.0";
 
   src = fetchFromGitHub {
     owner = "hetznercloud";
     repo = "cli";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ZC71++aC0fUkUG0h5aRxU0FpR1eNruFWAB1e2e5c/Vo=";
+    hash = "sha256-cJNCp60OZBPXtda787PDT9iInxidTvzYmf9orifmS/A=";
   };
 
-  vendorHash = "sha256-T407Y4IZlJnrCGSWpuN1wv8Dng2F7++2cMfLGjYC2vM=";
+  vendorHash = "sha256-IIszQCAsNSQYieM1JQH1Dald9saUhZ2kPhwZ1p2GTp4=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/development/tools/jaq/default.nix b/pkgs/development/tools/jaq/default.nix
index ae7c6b35bd7b..b95473aac745 100644
--- a/pkgs/development/tools/jaq/default.nix
+++ b/pkgs/development/tools/jaq/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "jaq";
-  version = "1.2.0";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "01mf02";
     repo = "jaq";
     rev = "v${version}";
-    hash = "sha256-Jc/etdQtJfFmmdxWdJUVQqPjHTCY6ZUAO+ShNJboOq0=";
+    hash = "sha256-QXlHiVlKx9qmW5Cw4IGzjuUSUfoc9IvA5ZkTc1Ev37Q=";
   };
 
-  cargoHash = "sha256-TaWD9xpTsNWQt/Wz5PYY0mgFfP5d/Jn3EhcHUywUk3Q=";
+  cargoHash = "sha256-9fv8Z9AE9GV/Bq+iAsxUkD/CS25/kOBKKS4SAke/tFk=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.Security
diff --git a/pkgs/development/tools/jira-cli-go/default.nix b/pkgs/development/tools/jira-cli-go/default.nix
index 51b847769cbb..d031cd9394d7 100644
--- a/pkgs/development/tools/jira-cli-go/default.nix
+++ b/pkgs/development/tools/jira-cli-go/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "jira-cli-go";
-  version = "1.5.0";
+  version = "1.5.1";
 
   src = fetchFromGitHub {
     owner = "ankitpokhrel";
     repo = "jira-cli";
     rev = "v${version}";
-    hash = "sha256-FdDoKww/6WzKCZBrgvh72TRovMXLOOzlmoFreMGWAeo=";
+    hash = "sha256-edytj9hB8lDwy3qGSyLudu5G4DSRGKhD0vDoWz5eUgs=";
   };
 
   vendorHash = "sha256-DAdzbANqr0fa4uO8k/yJFoirgbZiKOQhOH8u8d+ncao=";
diff --git a/pkgs/development/tools/k6/default.nix b/pkgs/development/tools/k6/default.nix
index 06f8251f0993..c5c8f85e9126 100644
--- a/pkgs/development/tools/k6/default.nix
+++ b/pkgs/development/tools/k6/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "k6";
-  version = "0.48.0";
+  version = "0.49.0";
 
   src = fetchFromGitHub {
     owner = "grafana";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-6EiHLm69mBhv0ujFPdXUk1wPZwKk9TS250QHrdXfQD8=";
+    hash = "sha256-zlsHEAGsey+qe0s7sle9Kt/V0hTp6uzelJmRlATznUY=";
   };
 
   subPackages = [ "./" ];
diff --git a/pkgs/development/tools/kdash/default.nix b/pkgs/development/tools/kdash/default.nix
index c7f4e8b7525f..73746875247d 100644
--- a/pkgs/development/tools/kdash/default.nix
+++ b/pkgs/development/tools/kdash/default.nix
@@ -12,13 +12,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "kdash";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "kdash-rs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Vk0Pf5uF9AANv/vf32ZrICJJTp6QRsR/nFW40xnkImo=";
+    sha256 = "sha256-XY6aBqLHbif3RsytNm7JnDXspICJuhS7SJ+ApwTeqX4=";
   };
 
   nativeBuildInputs = [ perl python3 pkg-config ];
@@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl xorg.xcbutil ]
     ++ lib.optional stdenv.isDarwin AppKit;
 
-  cargoHash = "sha256-gY4ywjTokEc5Uv4InARH2s3WYiPGYSDDWk2kltyQa+0=";
+  cargoHash = "sha256-ODQf+Fvil+oBJcM38h1HdrcgtJw0b65f5auLuZtUgik=";
 
   meta = with lib; {
     description = "A simple and fast dashboard for Kubernetes";
diff --git a/pkgs/development/tools/kube-linter/default.nix b/pkgs/development/tools/kube-linter/default.nix
index bcacc28214bf..141239c403f2 100644
--- a/pkgs/development/tools/kube-linter/default.nix
+++ b/pkgs/development/tools/kube-linter/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kube-linter";
-  version = "0.6.5";
+  version = "0.6.7";
 
   src = fetchFromGitHub {
     owner = "stackrox";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-gygzibpTpdVg1ZenAXIDHXYwAemlr6qkioE+GV52NkE=";
+    sha256 = "sha256-D9QJsYaYvGjDucr0Xedg2LEqfwTxzIQBBNNFZ1m5D/U=";
   };
 
-  vendorHash = "sha256-ZeAAvL5pOvHMAsDBe/0CBeayTsUrPDK5a5rAxHAu64o=";
+  vendorHash = "sha256-ARrMHjR/fOGS8EDMCKiEr3ubWjqDySb/AdX9jNYWOVA=";
 
   ldflags = [
     "-s" "-w" "-X golang.stackrox.io/kube-linter/internal/version.version=${version}"
diff --git a/pkgs/development/tools/language-servers/beancount-language-server/default.nix b/pkgs/development/tools/language-servers/beancount-language-server/default.nix
index 9eb1d746c216..844bc89567d0 100644
--- a/pkgs/development/tools/language-servers/beancount-language-server/default.nix
+++ b/pkgs/development/tools/language-servers/beancount-language-server/default.nix
@@ -1,20 +1,26 @@
 { lib
 , fetchFromGitHub
 , rustPlatform
+, stdenv
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "beancount-language-server";
-  version = "1.3.1";
+  version = "1.3.4";
 
   src = fetchFromGitHub {
     owner = "polarmutex";
     repo = "beancount-language-server";
     rev = "v${version}";
-    hash = "sha256-9IkbEOG6xcmpowsLj/RHnMFGQxh02JMQsTVli4hvs/M=";
+    hash = "sha256-C44Z8JaEZvwgocaGjWT3rUAgIBtCRo0xZappMsydR7g=";
   };
 
-  cargoHash = "sha256-qhN2//hhCaKpm0HAiUL/CfdrtvAXgR34vXBECB8UDxE=";
+  cargoHash = "sha256-NMSNCURSO1iIWHH27FI5Y0q7+Ghds8VSxRGBOp+fH6A=";
+
+  # Workaround for https://github.com/NixOS/nixpkgs/issues/166205
+  env = lib.optionalAttrs (stdenv.cc.libcxx != null) {
+    NIX_LDFLAGS = "-l${stdenv.cc.libcxx.cxxabi.libName}";
+  };
 
   doInstallCheck = true;
   postInstallCheck = ''
diff --git a/pkgs/development/tools/language-servers/jq-lsp/default.nix b/pkgs/development/tools/language-servers/jq-lsp/default.nix
index 08e83763fd09..13f852790662 100644
--- a/pkgs/development/tools/language-servers/jq-lsp/default.nix
+++ b/pkgs/development/tools/language-servers/jq-lsp/default.nix
@@ -3,18 +3,29 @@
 , fetchFromGitHub
 }:
 
-buildGoModule {
+buildGoModule rec {
   pname = "jq-lsp";
-  version = "unstable-2023-10-27";
+  version = "0.1.2";
 
   src = fetchFromGitHub {
     owner = "wader";
     repo = "jq-lsp";
-    rev = "b4707e7776a4eb3093b1a7533ebd41368240095a";
-    hash = "sha256-AU4xGweeFx+kSsrqkTtSjl+N77cITF/qvAVZGUZY5SE=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-a3ZqVWG7kjWQzL1efrKc4s4D14qD/+6JM26vaduxhWg=";
   };
 
-  vendorHash = "sha256-ppQ81uERHBgOr/bm/CoDSWcK+IqHwvcL6RFi0DgoLuw=";
+  vendorHash = "sha256-bIe006I1ryvIJ4hC94Ux2YVdlmDIM4oZaK/qXafYYe0=";
+
+  # based on https://github.com/wader/jq-lsp/blob/master/.goreleaser.yml
+  CGO_ENABLED = 0;
+  GOFLAGS = [ "-trimpath" ];
+  ldflags = [
+    "-s"
+    "-w"
+    "-X main.version=${version}"
+    "-X main.commit=${src.rev}"
+    "-X main.builtBy=Nix"
+  ];
 
   meta = with lib; {
     description = "jq language server";
diff --git a/pkgs/development/tools/language-servers/ruff-lsp/default.nix b/pkgs/development/tools/language-servers/ruff-lsp/default.nix
index 5932cdd9e85a..7abb3ea9a64e 100644
--- a/pkgs/development/tools/language-servers/ruff-lsp/default.nix
+++ b/pkgs/development/tools/language-servers/ruff-lsp/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "ruff-lsp";
-  version = "0.0.50";
+  version = "0.0.51";
   pyproject = true;
   disabled = pythonOlder "3.7";
 
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "astral-sh";
     repo = "ruff-lsp";
     rev = "refs/tags/v${version}";
-    hash = "sha256-4LGCHbd5NVp6DakE9MwyB64BaMqHgYLxGGo9IXZzjiE=";
+    hash = "sha256-PEbDYVig0i1V8EF6ZDtdCTUz7Gz1HpZiOK0OZ1mbwjY=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/metal-cli/default.nix b/pkgs/development/tools/metal-cli/default.nix
index 5aa1c2e5698d..62bc61a98a25 100644
--- a/pkgs/development/tools/metal-cli/default.nix
+++ b/pkgs/development/tools/metal-cli/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "metal-cli";
-  version = "0.19.0";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "equinix";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-S3/VKK+ab6RMuhqP1RRQK7ATcZn37Nws3ya3v9ujZ5M=";
+    hash = "sha256-Y6zjEB7LKEb1CGQwNs8jAx1BFSw+EGwgXBMGyQUJhYc=";
   };
 
-  vendorHash = "sha256-tu3AryadBbvQzYCEefGAWOnpEki3VJVxFZAseHrXhD4=";
+  vendorHash = "sha256-FJ68j41Nb6KqiZPJE/u0TYDkXt43810Nx0p/JQDopn8=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/development/tools/minizinc/ide.nix b/pkgs/development/tools/minizinc/ide.nix
index bacd769271e4..ce115971f944 100644
--- a/pkgs/development/tools/minizinc/ide.nix
+++ b/pkgs/development/tools/minizinc/ide.nix
@@ -1,26 +1,34 @@
-{ lib, mkDerivation, fetchFromGitHub, qtbase, qtwebengine, qtwebkit, qmake, minizinc }:
+{ lib, stdenv, fetchFromGitHub, qtbase, qmake, qtwebsockets, minizinc, makeWrapper, Cocoa }:
 
-mkDerivation rec {
+let
+  executableLoc = if stdenv.isDarwin then "$out/Applications/MiniZincIDE.app/Contents/MacOS/MiniZincIDE" else "$out/bin/MiniZincIDE";
+in
+stdenv.mkDerivation rec {
   pname = "minizinc-ide";
-  version = "2.5.5";
+  version = "2.8.2";
 
   src = fetchFromGitHub {
     owner = "MiniZinc";
     repo = "MiniZincIDE";
     rev = version;
-    sha256 = "sha256-0U3KFRDam8psbCaEOcrwqzICAy1oBgo8SFEiR/PMqZk=";
+    hash = "sha256-3L/hulNI7e2wE9gMt2h3mS0ubHZ4kcVpwALCmWQtv7A=";
     fetchSubmodules = true;
   };
 
-  nativeBuildInputs = [ qmake ];
-  buildInputs = [ qtbase qtwebengine qtwebkit ];
+  nativeBuildInputs = [ qmake makeWrapper ];
+  buildInputs = [ qtbase qtwebsockets ] ++ lib.optionals stdenv.isDarwin [ Cocoa ];
 
   sourceRoot = "${src.name}/MiniZincIDE";
 
   dontWrapQtApps = true;
 
-  postInstall = ''
-    wrapProgram $out/bin/MiniZincIDE --prefix PATH ":" ${lib.makeBinPath [ minizinc ]}
+  postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
+    mkdir -p $out/Applications
+    mv $out/bin/MiniZincIDE.app $out/Applications/
+  '' + ''
+    wrapProgram ${executableLoc} \
+      --prefix PATH ":" ${lib.makeBinPath [ minizinc ]} \
+      --set QT_QPA_PLATFORM_PLUGIN_PATH "${qtbase}/lib/qt-6/plugins/platforms"
   '';
 
   meta = with lib; {
@@ -34,7 +42,7 @@ mkDerivation rec {
       It is a subset of the higher-level language Zinc.
     '';
     license = licenses.mpl20;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = [ maintainers.dtzWill ];
   };
 }
diff --git a/pkgs/development/tools/misc/act/default.nix b/pkgs/development/tools/misc/act/default.nix
index 5a22531dbcf5..e9f6d070b6f6 100644
--- a/pkgs/development/tools/misc/act/default.nix
+++ b/pkgs/development/tools/misc/act/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "act";
-  version = "0.2.57";
+  version = "0.2.58";
 
   src = fetchFromGitHub {
     owner = "nektos";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-lof3PWscGHQ9ZTF83wGyG0jMebYY2xec+HouQezr2d8=";
+    hash = "sha256-JvkJYjgBdbd3ffgOTMeE6Pe94Ctk19nOd2b2HfckPTU=";
   };
 
-  vendorHash = "sha256-7nvUs1R2jybh+PR/cHml8lR5jU25b2liPKLH47WDVxQ=";
+  vendorHash = "sha256-0Sjj9+YJcIkigvJOXxtDVcUylZmVY/Xv/IYpEBN46Is=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/misc/devspace/default.nix b/pkgs/development/tools/misc/devspace/default.nix
index f2f31d00e6b2..198e15370bf8 100644
--- a/pkgs/development/tools/misc/devspace/default.nix
+++ b/pkgs/development/tools/misc/devspace/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "devspace";
-  version = "6.3.9";
+  version = "6.3.10";
 
   src = fetchFromGitHub {
     owner = "devspace-sh";
     repo = "devspace";
     rev = "v${version}";
-    hash = "sha256-Jy2e1bCCO3YeigQM9qSbbgqrZppXlUq+2oXIiotMKtI=";
+    hash = "sha256-ExVetF5YP9gf5ifBsdPow7KA867+4iOxe/0OwZwctoc=";
   };
 
   vendorHash = null;
diff --git a/pkgs/development/tools/misc/edb/default.nix b/pkgs/development/tools/misc/edb/default.nix
index 2203863264f3..fdde4064698c 100644
--- a/pkgs/development/tools/misc/edb/default.nix
+++ b/pkgs/development/tools/misc/edb/default.nix
@@ -3,14 +3,14 @@
 
 mkDerivation rec {
   pname = "edb";
-  version = "1.3.0";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "eteran";
     repo = "edb-debugger";
-    rev = "1.3.0";
+    rev = version;
     fetchSubmodules = true;
-    sha256 = "fFUau8XnsRFjC83HEsqyhrwCCBOfDmV6oACf3txm7O8=";
+    hash = "sha256-1Q0eZS05L4sxzcPvEFdEaobO7JYHRu98Yf+n3ZnBi+E=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
@@ -26,12 +26,10 @@ mkDerivation rec {
     # The build script checks for the presence of .git to determine whether
     # submodules were fetched and will throw an error if it's not there.
     # Avoid using leaveDotGit in the fetchFromGitHub options as it is non-deterministic.
-    mkdir -p src/qhexview/.git
+    mkdir -p src/qhexview/.git lib/gdtoa-desktop/.git
 
     # Change default optional terminal program path to one that is more likely to work on NixOS.
     substituteInPlace ./src/Configuration.cpp --replace "/usr/bin/xterm" "xterm";
-
-    sed '1i#include <memory>' -i include/{RegisterViewModelBase,State,IState}.h # gcc12
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/tools/misc/kool/default.nix b/pkgs/development/tools/misc/kool/default.nix
index 5b326beb1efc..f1d4b2b74654 100644
--- a/pkgs/development/tools/misc/kool/default.nix
+++ b/pkgs/development/tools/misc/kool/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "kool";
-  version = "2.2.0";
+  version = "3.0.0";
 
   src = fetchFromGitHub {
     owner = "kool-dev";
     repo = "kool";
     rev = version;
-    hash = "sha256-YVgUKA7bMcncZDYaxaN2kCbE3JUmM9aM3GoQkOXEWpA=";
+    hash = "sha256-+vdizU2/q2nrEanpRPy1scgfTYh/I7feW4jz8efelWY=";
   };
 
-  vendorHash = "sha256-zsrqppHl7Z8o+J1SzZnv1jOdPO04JaF1K38a//+uAxU=";
+  vendorHash = "sha256-PmS96KVhe9TDmtYBx2hROLCbGMQ0OY3MN405dUmxPzk=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/development/tools/misc/n98-magerun2/default.nix b/pkgs/development/tools/misc/n98-magerun2/default.nix
index 6aabcbffbb66..c04b3840a437 100644
--- a/pkgs/development/tools/misc/n98-magerun2/default.nix
+++ b/pkgs/development/tools/misc/n98-magerun2/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "n98-magerun2";
-  version = "7.2.0";
+  version = "7.3.1";
 
   src = fetchurl {
     url = "https://github.com/netz98/n98-magerun2/releases/download/${finalAttrs.version}/n98-magerun2.phar";
-    hash = "sha256-w+58TTyoS44Ouaz6KFIJLhSl/UeF1I7cSznlZH6fLXw=";
+    hash = "sha256-5G3sfyw8C3BwRqnK2o3upJTI/pENyaFCiMC4XGOkJT4=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/tools/misc/opengrok/default.nix b/pkgs/development/tools/misc/opengrok/default.nix
index 73f54dc24b8e..a2ade07c21c4 100644
--- a/pkgs/development/tools/misc/opengrok/default.nix
+++ b/pkgs/development/tools/misc/opengrok/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "opengrok";
-  version = "1.13.1";
+  version = "1.13.2";
 
   # binary distribution
   src = fetchurl {
     url = "https://github.com/oracle/opengrok/releases/download/${version}/${pname}-${version}.tar.gz";
-    hash = "sha256-3/BBLPoYX1/ft3MGiJD9OPtkB2PJM7bXkGRuXxTToXI=";
+    hash = "sha256-Er6f1KgMZ4e/o3TJkw6z96rxBGQ/KEc9gGI2W6m+b8U=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/misc/runme/default.nix b/pkgs/development/tools/misc/runme/default.nix
index 9c3f60854576..c0f305a591e3 100644
--- a/pkgs/development/tools/misc/runme/default.nix
+++ b/pkgs/development/tools/misc/runme/default.nix
@@ -12,13 +12,13 @@
 
 buildGoModule rec {
   pname = "runme";
-  version = "2.2.1";
+  version = "2.2.2";
 
   src = fetchFromGitHub {
     owner = "stateful";
     repo = "runme";
     rev = "v${version}";
-    hash = "sha256-GTFlywVjWT2/qcmjsDUUiL4x6pzXw8h/G4kfGPkf3m8=";
+    hash = "sha256-JEKfUrXCN2cvoVs2bScq1v/DfmqaUoew3PyGnNaTKN8=";
   };
 
   vendorHash = "sha256-+g6vEgA+vbGzLnotmhk0gp1IcY3zpF71TdoB8d84W6A=";
diff --git a/pkgs/development/tools/misc/slint-lsp/default.nix b/pkgs/development/tools/misc/slint-lsp/default.nix
index ac26ead01cff..3fa33bbcb8da 100644
--- a/pkgs/development/tools/misc/slint-lsp/default.nix
+++ b/pkgs/development/tools/misc/slint-lsp/default.nix
@@ -25,14 +25,14 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "slint-lsp";
-  version = "1.3.2";
+  version = "1.4.0";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-zNTel91c1ECg4z7xIu37GcSWHTxTKtxpGjH3TpiFQ1k=";
+    sha256 = "sha256-ZX8ylDDyOWwEcupNg7u0RvmsKMC4RZNaKPg04PaCo3w=";
   };
 
-  cargoHash = "sha256-pT3z6t1W/DitH/GJJIJhQawslodKzIkCyO0yd9OlvAg=";
+  cargoHash = "sha256-BxiN2/PItU29H8btX5bjwfd9C6p8AEvxJunM8lMu3SI=";
 
   nativeBuildInputs = [ cmake pkg-config fontconfig ];
   buildInputs = rpathLibs ++ [ xorg.libxcb.dev ]
diff --git a/pkgs/development/tools/misc/strace/default.nix b/pkgs/development/tools/misc/strace/default.nix
index 591eaeaa1ae2..d851aa217b5f 100644
--- a/pkgs/development/tools/misc/strace/default.nix
+++ b/pkgs/development/tools/misc/strace/default.nix
@@ -1,12 +1,12 @@
-{ lib, stdenv, fetchurl, perl, libunwind, buildPackages, gitUpdater }:
+{ lib, stdenv, fetchurl, perl, libunwind, buildPackages, gitUpdater, elfutils }:
 
 stdenv.mkDerivation rec {
   pname = "strace";
-  version = "6.6";
+  version = "6.7";
 
   src = fetchurl {
     url = "https://strace.io/files/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-QhtBhsBrcFFj5k3IXycevc9nZgr4ZnKDFH1ehZ/IqWw=";
+    sha256 = "sha256-IJAgHho/8yhG9P5CHBFjsV9EC7OOMTVdCfgtOUmSKvc=";
   };
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   # 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 = [ libunwind ]; # support -k
+  buildInputs = [ libunwind elfutils ]; # support -k and -kk
 
   configureFlags = [ "--enable-mpers=check" ];
 
diff --git a/pkgs/development/tools/misc/texlab/default.nix b/pkgs/development/tools/misc/texlab/default.nix
index 1eccff2694cb..4756be84a860 100644
--- a/pkgs/development/tools/misc/texlab/default.nix
+++ b/pkgs/development/tools/misc/texlab/default.nix
@@ -15,16 +15,16 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "texlab";
-  version = "5.12.2";
+  version = "5.12.3";
 
   src = fetchFromGitHub {
     owner = "latex-lsp";
     repo = "texlab";
     rev = "refs/tags/v${version}";
-    hash = "sha256-NEiUWMmJjhhK9XYbW1dla7iZJG4bdttbuSJmtO4f1UE=";
+    hash = "sha256-/QjaAzCPhXzsiRhnRRZcujmk1C9IONYlMfjp/a1iIDA=";
   };
 
-  cargoHash = "sha256-OFgBBO4RZ7oS2da9cGIePnLhfFdHfW3FdOT0B8bNC3g=";
+  cargoHash = "sha256-VDRLbhgQkPkeTpQxRsq8QEU53Zd4b5F0phoq2cAWIK8=";
 
   outputs = [ "out" ] ++ lib.optional (!isCross) "man";
 
diff --git a/pkgs/development/tools/mysql-shell/innovation.nix b/pkgs/development/tools/mysql-shell/innovation.nix
index 6104aadf0492..0755b2271c03 100644
--- a/pkgs/development/tools/mysql-shell/innovation.nix
+++ b/pkgs/development/tools/mysql-shell/innovation.nix
@@ -16,7 +16,6 @@
 , libssh
 , zstd
 , lz4
-, boost
 , readline
 , libtirpc
 , rpcsvc-proto
@@ -35,8 +34,8 @@
 let
   pythonDeps = with python3.pkgs; [ certifi paramiko pyyaml ];
 
-  mysqlShellVersion = "8.2.1";
-  mysqlServerVersion = "8.2.0";
+  mysqlShellVersion = "8.3.0";
+  mysqlServerVersion = "8.3.0";
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "mysql-shell-innovation";
@@ -45,11 +44,11 @@ stdenv.mkDerivation (finalAttrs: {
   srcs = [
     (fetchurl {
       url = "https://cdn.mysql.com//Downloads/MySQL-${lib.versions.majorMinor mysqlServerVersion}/mysql-${mysqlServerVersion}.tar.gz";
-      hash = "sha256-itPj8cWuIVS+Y4rPVW6JgfcC0FKsxZV+d23xciwhGXk=";
+      hash = "sha256-HyFJWgt6grJKRT1S4hU6gUs8pwTsz5mXZtVFvOUvOG4=";
     })
     (fetchurl {
       url = "https://cdn.mysql.com//Downloads/MySQL-Shell/mysql-shell-${finalAttrs.version}-src.tar.gz";
-      hash = "sha256-m6WdFow28bxW52q+m8PniZCU/1Ej4secdPQi8GKlziE=";
+      hash = "sha256-O0j/gvS9fR/xp9plytjj249H7LY/+eyst1IsFpy318U=";
     })
   ];
 
@@ -71,7 +70,6 @@ stdenv.mkDerivation (finalAttrs: {
     ++ lib.optionals stdenv.isDarwin [ cctools DarwinTools ];
 
   buildInputs = [
-    boost
     curl
     libedit
     libssh
@@ -98,7 +96,7 @@ stdenv.mkDerivation (finalAttrs: {
     # Build MySQL
     echo "Building mysqlclient mysqlxclient"
 
-    cmake -DWITH_BOOST=system -DWITH_SYSTEM_LIBS=ON -DWITH_ROUTER=OFF -DWITH_UNIT_TESTS=OFF \
+    cmake -DWITH_SYSTEM_LIBS=ON -DWITH_FIDO=system -DWITH_ROUTER=OFF -DWITH_UNIT_TESTS=OFF \
       -DFORCE_UNSUPPORTED_COMPILER=1 -S ../mysql -B ../mysql/build
 
     cmake --build ../mysql/build --parallel ''${NIX_BUILD_CORES:-1} --target mysqlclient mysqlxclient
diff --git a/pkgs/development/tools/oh-my-posh/default.nix b/pkgs/development/tools/oh-my-posh/default.nix
index 26e3947e191c..ce6d63c418f0 100644
--- a/pkgs/development/tools/oh-my-posh/default.nix
+++ b/pkgs/development/tools/oh-my-posh/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "oh-my-posh";
-  version = "19.8.0";
+  version = "19.8.2";
 
   src = fetchFromGitHub {
     owner = "jandedobbeleer";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-nCzGvWthu+gmYKKEqnU552Y4Ii4O7Ttel/9wmZo84fY=";
+    hash = "sha256-Gc8pz+DFP0Wze6YC4hzhgZiSGi61j7Lzak/o3LhdcfI=";
   };
 
   vendorHash = "sha256-8ZupQe4b3uCX79Q0oYqggMWZE9CfX5OSFdLIrxT8CHY=";
diff --git a/pkgs/development/tools/okteto/default.nix b/pkgs/development/tools/okteto/default.nix
index 2d6a26856df7..1c7ba093b6aa 100644
--- a/pkgs/development/tools/okteto/default.nix
+++ b/pkgs/development/tools/okteto/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "okteto";
-  version = "2.24.1";
+  version = "2.25.1";
 
   src = fetchFromGitHub {
     owner = "okteto";
     repo = "okteto";
     rev = version;
-    hash = "sha256-AM92VtkTRR4QSEg0mrki8UzOxVx7g+IsKUDHTE62d08=";
+    hash = "sha256-HBXp66chq+SzdEb463awolf4Uv0ScHN6MjoziYyh4kA=";
   };
 
-  vendorHash = "sha256-vSvHjQZFLzUIC9u+myI6Xi4YhetVkiQxBIkm5/RoV2U=";
+  vendorHash = "sha256-+Adnveutg8soqK2Zwn2SNq7SEHd/Z91diHbPYHrGVrA=";
 
   postPatch = ''
     # Disable some tests that need file system & network access.
diff --git a/pkgs/development/tools/open-policy-agent/default.nix b/pkgs/development/tools/open-policy-agent/default.nix
index 2d5fae331142..ee249c2c7657 100644
--- a/pkgs/development/tools/open-policy-agent/default.nix
+++ b/pkgs/development/tools/open-policy-agent/default.nix
@@ -11,13 +11,13 @@ assert enableWasmEval && stdenv.isDarwin -> builtins.throw "building with wasm o
 
 buildGoModule rec {
   pname = "open-policy-agent";
-  version = "0.60.0";
+  version = "0.61.0";
 
   src = fetchFromGitHub {
     owner = "open-policy-agent";
     repo = "opa";
     rev = "v${version}";
-    hash = "sha256-E+94J83IDLuEayrlwIp8TL+GZeUCkQmSyNL8N7mvK6o=";
+    hash = "sha256-d0/S9XP/W6Mhs1b9IBzm7kerb6SJ7UzsYS0DnTDVfvY=";
   };
 
   vendorHash = null;
diff --git a/pkgs/development/tools/packer/default.nix b/pkgs/development/tools/packer/default.nix
index d02a32827c2c..cbdd003d9216 100644
--- a/pkgs/development/tools/packer/default.nix
+++ b/pkgs/development/tools/packer/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "packer";
-  version = "1.10.0";
+  version = "1.10.1";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "packer";
     rev = "v${version}";
-    hash = "sha256-pHqYO3a9JruOCbMbLLQ2BqS4bcCeaBf82cBxGVHgLoY=";
+    hash = "sha256-P7QG4ldOJn83w5XxIzC1dhVmn2e/gcwHBT9cZiQmsbo=";
   };
 
-  vendorHash = "sha256-ydG1nINW9uGYv5uNlJ6p8GHSkIW83qGpUAfRU+yQXmc=";
+  vendorHash = "sha256-KtMK6jZ9c84OVWJC1njgOh1U+wrFo4G6Qt/XfOFvIhE=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/development/tools/postiats-utilities/default.nix b/pkgs/development/tools/postiats-utilities/default.nix
index 51d9d14efa17..6ac021e1ba09 100644
--- a/pkgs/development/tools/postiats-utilities/default.nix
+++ b/pkgs/development/tools/postiats-utilities/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
-    libdir="$out/lib/${python3.libPrefix}/site-packages"
+    libdir="$out/${python3.sitePackages}"
     mkdir -p "$libdir"
     cp -r postiats "$libdir"
 
diff --git a/pkgs/development/tools/protoc-gen-go-vtproto/default.nix b/pkgs/development/tools/protoc-gen-go-vtproto/default.nix
index d24ab86538af..e1e716eee13a 100644
--- a/pkgs/development/tools/protoc-gen-go-vtproto/default.nix
+++ b/pkgs/development/tools/protoc-gen-go-vtproto/default.nix
@@ -4,16 +4,16 @@
 }:
 buildGoModule rec {
   pname = "protoc-gen-go-vtproto";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "planetscale";
     repo = "vtprotobuf";
     rev = "v${version}";
-    sha256 = "sha256-2DpL8CYl0MWpr7TBJPwDlgKvOoa5RrVwMjOxrEP5Wio=";
+    sha256 = "sha256-ji6elc0hN49A4Ov/ckd8chPR4/8ZX11THzVz9HJGui4=";
   };
 
-  vendorHash = "sha256-JpSVO8h7+StLG9/dJQkmrIlh9zIHABoqP1hq+X5ajVs=";
+  vendorHash = "sha256-UMOEePOtOtmm9ShQy5LXcEUTv8/SIG9dU7/9vLhrBxQ=";
 
   excludedPackages = [ "conformance" ];
 
diff --git a/pkgs/development/tools/pscale/default.nix b/pkgs/development/tools/pscale/default.nix
index 666a30264fda..5a505559d0e5 100644
--- a/pkgs/development/tools/pscale/default.nix
+++ b/pkgs/development/tools/pscale/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "pscale";
-  version = "0.178.0";
+  version = "0.181.0";
 
   src = fetchFromGitHub {
     owner = "planetscale";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-Ttz6Ny9HYG07rp/6TkWw1E3DTRw1IkLvMBBm/gkI1j0=";
+    sha256 = "sha256-f/SrH/xdH0HYxGAbbIvr7yAgHJZlIfT/P1mC+yzQ7Vs=";
   };
 
-  vendorHash = "sha256-0xHyIe5fGld6LJmhKqTR/6toecRX/pyxEJabW47HU6Y=";
+  vendorHash = "sha256-Fj2yOENvomRcaIgP91NRl8rcggjPFZbKTwdUBBizios=";
 
   ldflags = [
     "-s" "-w"
diff --git a/pkgs/development/tools/purescript/spago/default.nix b/pkgs/development/tools/purescript/spago/default.nix
index ada0eb350efa..82d3be2fd469 100644
--- a/pkgs/development/tools/purescript/spago/default.nix
+++ b/pkgs/development/tools/purescript/spago/default.nix
@@ -55,4 +55,7 @@ spago.overrideAttrs (oldAttrs: {
           touch $out
         '';
   };
+  meta = (oldAttrs.meta or {}) // {
+    mainProgram = "spago";
+  };
 })
diff --git a/pkgs/development/tools/refurb/default.nix b/pkgs/development/tools/refurb/default.nix
index 5eb52df0a0f1..17c32d78d288 100644
--- a/pkgs/development/tools/refurb/default.nix
+++ b/pkgs/development/tools/refurb/default.nix
@@ -5,14 +5,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "refurb";
-  version = "1.27.0";
+  version = "1.28.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "dosisod";
     repo = "refurb";
     rev = "refs/tags/v${version}";
-    hash = "sha256-v9zeip7dyEGbn4FVXkd713ybVyf9tvvflCeiS4H7lO0=";
+    hash = "sha256-b7Id2Oyjw3NZno56IMDIq7fn5u9+jn42nuae8ix90fM=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/reindeer/default.nix b/pkgs/development/tools/reindeer/default.nix
index 6dab09450ee2..eaf4b1858814 100644
--- a/pkgs/development/tools/reindeer/default.nix
+++ b/pkgs/development/tools/reindeer/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "reindeer";
-  version = "unstable-2024-01-25";
+  version = "unstable-2024-01-30";
 
   src = fetchFromGitHub {
     owner = "facebookincubator";
     repo = pname;
-    rev = "66cf0b39d0307210a95ff4cf84996a5b73da76c5";
-    sha256 = "sha256-F/I1eJVJEs97Rgs94KiSmRJgpNSgQiblMxrYySl5e+g=";
+    rev = "2fe0af4d3b637d3dfff41d26623a4596a7b5fdb0";
+    sha256 = "sha256-MUMqM6BZUECxdOkBdeNMEE88gJumKI/ODo+1hmmrCHY=";
   };
 
-  cargoSha256 = "sha256-Yv/DKW/6/XCbF0o50qPjOlU/3wNBJi/8o5uGRcS0gic=";
+  cargoSha256 = "sha256-fquvUq9MjC7J24wuZR+voUkm3F7eMy1ELxMuELlQaus=";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs =
diff --git a/pkgs/development/tools/rover/default.nix b/pkgs/development/tools/rover/default.nix
index 5fbde990df75..90b3d91413f7 100644
--- a/pkgs/development/tools/rover/default.nix
+++ b/pkgs/development/tools/rover/default.nix
@@ -1,5 +1,4 @@
 { lib
-, callPackage
 , fetchFromGitHub
 , perl
 , rustPlatform
@@ -9,20 +8,21 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rover";
-  version = "0.14.0";
+  version = "0.22.0";
 
   src = fetchFromGitHub {
     owner = "apollographql";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-fVgo5Ds/VK0kBpF+F2FdMvBnQj2IB+B5ToOK8ONdq6c=";
+    sha256 = "sha256-+BsD7SRinU57Alg71N3tdL9iFGGdomVA7SrBE6G1f4E=";
   };
 
-  cargoSha256 = "sha256-fNqnpLNENLJEhbqxLFUqyjAf8tEPCLoGSRV91gOY9LI=";
+  cargoSha256 = "sha256-SDvOxvfv8FNUebfwSFnBc6ormK2xpXPjmACwtllHfQE=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.Security
     darwin.apple_sdk.frameworks.CoreServices
+    darwin.apple_sdk.frameworks.SystemConfiguration
   ];
 
   nativeBuildInputs = [
@@ -36,15 +36,6 @@ rustPlatform.buildRustPackage rec {
     "-- --skip=latest_plugins_are_valid_versions"
   ];
 
-  # The rover-client's build script (xtask/src/commands/prep/schema.rs) will try to
-  # download the API's graphql schema at build time to our read-only filesystem.
-  # To avoid this we pre-download it to a location the build script checks.
-  preBuild = ''
-    cp ${./schema}/hash.id              crates/rover-client/.schema/
-    cp ${./schema}/etag.id              crates/rover-client/.schema/
-    cp ${./schema}/schema.graphql       crates/rover-client/.schema/
-  '';
-
   passthru.updateScript = ./update.sh;
 
   # Some tests try to write configuration data to a location in the user's home
diff --git a/pkgs/development/tools/rover/schema/etag.id b/pkgs/development/tools/rover/schema/etag.id
deleted file mode 100644
index 59331ac0df6d..000000000000
--- a/pkgs/development/tools/rover/schema/etag.id
+++ /dev/null
@@ -1 +0,0 @@
-d35f8c48cb89329f33656944fa9e997de1e778b043b9ca4d78c8accdecfd9046
diff --git a/pkgs/development/tools/rover/schema/hash.id b/pkgs/development/tools/rover/schema/hash.id
deleted file mode 100644
index d730728cfa77..000000000000
--- a/pkgs/development/tools/rover/schema/hash.id
+++ /dev/null
@@ -1 +0,0 @@
-ff145f12604d11312e6a2f8a61a3d226fcdb2ca79f6b7fbc24c5a22aa23ab1af
diff --git a/pkgs/development/tools/rover/schema/schema.graphql b/pkgs/development/tools/rover/schema/schema.graphql
deleted file mode 100644
index 8cc527f4f822..000000000000
--- a/pkgs/development/tools/rover/schema/schema.graphql
+++ /dev/null
@@ -1,1980 +0,0 @@
-schema {
-  query: Query
-  mutation: Mutation
-}
-
-"""An organization in Apollo Studio. Can have multiple members and graphs."""
-type Organization {
-  auditLogExports: [AuditLogExport!]
-  """Graphs belonging to this organization."""
-  graphs(includeDeleted: Boolean): [Graph!]!
-  """Globally unique identifier, which isn't guaranteed stable (can be changed by administrators)."""
-  id: ID!
-  """Name of the organization, which can change over time and isn't unique."""
-  name: String!
-  """Graphs belonging to this organization."""
-  services(includeDeleted: Boolean): [Graph!]! @deprecated(reason: "Use graphs field instead")
-}
-
-type OrganizationMutation {
-  """Trigger a request for an audit export"""
-  requestAuditExport(actors: [ActorInput!], from: Timestamp!, graphIds: [String!], to: Timestamp!): Organization
-}
-
-"""Represents an actor that performs actions in Apollo Studio. Most actors are either a `USER` or a `GRAPH` (based on a request's provided API key), and they have the corresponding `ActorType`."""
-type Actor {
-  actorId: ID!
-  type: ActorType!
-}
-
-"""Input type to provide when specifying an `Actor` in operation arguments. See also the `Actor` object type."""
-input ActorInput {
-  actorId: ID!
-  type: ActorType!
-}
-
-enum ActorType {
-  ANONYMOUS_USER
-  BACKFILL
-  CRON
-  GRAPH
-  INTERNAL_IDENTITY
-  SYNCHRONIZATION
-  SYSTEM
-  USER
-}
-
-union AddOperationCollectionEntriesResult = AddOperationCollectionEntriesSuccess | PermissionError | ValidationError
-
-type AddOperationCollectionEntriesSuccess {
-  operationCollectionEntries: [OperationCollectionEntry!]!
-}
-
-union AddOperationCollectionEntryResult = OperationCollectionEntry | PermissionError | ValidationError
-
-input AddOperationInput {
-  """The operation's fields."""
-  document: OperationCollectionEntryStateInput!
-  """The operation's name."""
-  name: String!
-}
-
-type AffectedQuery {
-  id: ID!
-  """First 128 characters of query signature for display"""
-  signature: String
-  """Name to display to the user for the operation"""
-  displayName: String
-  """Name provided for the operation, which can be empty string if it is an anonymous operation"""
-  name: String
-  """Determines if this query validates against the proposed schema"""
-  isValid: Boolean
-  """List of changes affecting this query. Returns null if queried from SchemaDiff.changes.affectedQueries.changes"""
-  changes: [ChangeOnOperation!]
-  """Whether this operation was ignored and its severity was downgraded for that reason"""
-  markedAsIgnored: Boolean
-  """Whether the changes were marked as safe and its severity was downgraded for that reason"""
-  markedAsSafe: Boolean
-  """If the operation would be approved if the check ran again. Returns null if queried from SchemaDiff.changes.affectedQueries.alreadyApproved"""
-  alreadyApproved: Boolean
-  """If the operation would be ignored if the check ran again"""
-  alreadyIgnored: Boolean
-}
-
-"""
-Represents an API key that's used to authenticate a
-particular Apollo user or graph.
-"""
-interface ApiKey {
-  """The API key's ID."""
-  id: ID!
-  """The API key's name, for distinguishing it from other keys."""
-  keyName: String
-  """The value of the API key. **This is a secret credential!**"""
-  token: String!
-}
-
-type ApiKeyProvision {
-  apiKey: ApiKey!
-  created: Boolean!
-}
-
-type AuditLogExport {
-  """The list of actors to filter the audit export"""
-  actors: [Identity!]
-  """The time when the audit export was completed"""
-  completedAt: Timestamp
-  """The time when the audit export was reqeusted"""
-  createdAt: Timestamp!
-  """List of URLs to download the audits for the requested range"""
-  downloadUrls: [String!]
-  """The starting point of audits to include in export"""
-  from: Timestamp!
-  """The list of graphs to filter the audit export"""
-  graphs: [Graph!]
-  """The id for the audit export"""
-  id: ID!
-  """The user that initiated the audit export"""
-  requester: User
-  """The status of the audit export"""
-  status: AuditStatus!
-  """The end point of audits to include in export"""
-  to: Timestamp!
-}
-
-enum AuditStatus {
-  CANCELLED
-  COMPLETED
-  EXPIRED
-  FAILED
-  IN_PROGRESS
-  QUEUED
-}
-
-"""The building of a Studio variant (including supergraph composition and any contract filtering) as part of a launch."""
-type Build {
-  """The inputs provided to the build, including subgraph and contract details."""
-  input: BuildInput!
-  """The result of the build. This value is null until the build completes."""
-  result: BuildResult
-}
-
-"""A single error that occurred during the failed execution of a build."""
-type BuildError {
-  code: String
-  locations: [SourceLocation!]!
-  message: String!
-}
-
-"""Contains the details of an executed build that failed."""
-type BuildFailure {
-  """A list of all errors that occurred during the failed build."""
-  errorMessages: [BuildError!]!
-}
-
-union BuildInput = CompositionBuildInput | FilterBuildInput
-
-union BuildResult = BuildFailure | BuildSuccess
-
-"""Contains the details of an executed build that succeeded."""
-type BuildSuccess {
-  """Contains the supergraph and API schemas created by composition."""
-  coreSchema: CoreSchema!
-}
-
-"""A single change that was made to a definition in a schema."""
-type Change {
-  """The severity of the change (e.g., `FAILURE` or `NOTICE`)"""
-  severity: ChangeSeverity!
-  """Indicates the type of change that was made, and to what (e.g., 'TYPE_REMOVED')."""
-  code: String!
-  """Indication of the category of the change (e.g. addition, removal, edit)."""
-  category: ChangeCategory!
-  """A human-readable description of the change."""
-  description: String!
-  affectedQueries: [AffectedQuery!]
-  """Top level node affected by the change."""
-  parentNode: NamedIntrospectionType
-  """
-  Node related to the top level node that was changed, such as a field in an object,
-  a value in an enum or the object of an interface.
-  """
-  childNode: NamedIntrospectionValue
-  """Target arg of change made."""
-  argNode: NamedIntrospectionArg
-}
-
-"""
-Defines a set of categories that a schema change
-can be grouped by.
-"""
-enum ChangeCategory {
-  ADDITION
-  EDIT
-  REMOVAL
-  DEPRECATION
-}
-
-"""
-These schema change codes represent all of the possible changes that can
-occur during the schema diff algorithm.
-"""
-enum ChangeCode {
-  """Field was removed from the type."""
-  FIELD_REMOVED
-  """Type (object or scalar) was removed from the schema."""
-  TYPE_REMOVED
-  """Argument to a field was removed."""
-  ARG_REMOVED
-  """Type is no longer included in the union."""
-  TYPE_REMOVED_FROM_UNION
-  """Field was removed from the input object."""
-  FIELD_REMOVED_FROM_INPUT_OBJECT
-  """Value was removed from the enum."""
-  VALUE_REMOVED_FROM_ENUM
-  """Type no longer implements the interface."""
-  TYPE_REMOVED_FROM_INTERFACE
-  """Non-nullable argument was added to the field."""
-  REQUIRED_ARG_ADDED
-  """Non-nullable field was added to the input object. (Deprecated.)"""
-  NON_NULLABLE_FIELD_ADDED_TO_INPUT_OBJECT
-  """Required field was added to the input object."""
-  REQUIRED_FIELD_ADDED_TO_INPUT_OBJECT
-  """Return type for the field was changed."""
-  FIELD_CHANGED_TYPE
-  """Type of the field in the input object was changed."""
-  FIELD_ON_INPUT_OBJECT_CHANGED_TYPE
-  """
-  Type was changed from one kind to another.
-  Ex: scalar to object or enum to union.
-  """
-  TYPE_CHANGED_KIND
-  """Type of the argument was changed."""
-  ARG_CHANGED_TYPE
-  """Argument was changed from nullable to non-nullable."""
-  ARG_CHANGED_TYPE_OPTIONAL_TO_REQUIRED
-  """A new value was added to the enum."""
-  VALUE_ADDED_TO_ENUM
-  """A new value was added to the enum."""
-  TYPE_ADDED_TO_UNION
-  """Type now implements the interface."""
-  TYPE_ADDED_TO_INTERFACE
-  """Default value added or changed for the argument."""
-  ARG_DEFAULT_VALUE_CHANGE
-  """Nullable argument was added to the field."""
-  OPTIONAL_ARG_ADDED
-  """Nullable field was added to the input type. (Deprecated.)"""
-  NULLABLE_FIELD_ADDED_TO_INPUT_OBJECT
-  """Optional field was added to the input type."""
-  OPTIONAL_FIELD_ADDED_TO_INPUT_OBJECT
-  """Field was added to the type."""
-  FIELD_ADDED
-  """Type was added to the schema."""
-  TYPE_ADDED
-  """Enum was deprecated."""
-  ENUM_DEPRECATED
-  """Enum deprecation was removed."""
-  ENUM_DEPRECATION_REMOVED
-  """Reason for enum deprecation changed."""
-  ENUM_DEPRECATED_REASON_CHANGE
-  """Field was deprecated."""
-  FIELD_DEPRECATED
-  """Field deprecation removed."""
-  FIELD_DEPRECATION_REMOVED
-  """Reason for field deprecation changed."""
-  FIELD_DEPRECATED_REASON_CHANGE
-  """Description was added, removed, or updated for type."""
-  TYPE_DESCRIPTION_CHANGE
-  """Description was added, removed, or updated for field."""
-  FIELD_DESCRIPTION_CHANGE
-  """Description was added, removed, or updated for enum value."""
-  ENUM_VALUE_DESCRIPTION_CHANGE
-  """Description was added, removed, or updated for argument."""
-  ARG_DESCRIPTION_CHANGE
-  """Directive was removed."""
-  DIRECTIVE_REMOVED
-  """Argument to the directive was removed."""
-  DIRECTIVE_ARG_REMOVED
-  """Location of the directive was removed."""
-  DIRECTIVE_LOCATION_REMOVED
-  """Repeatable flag was removed for directive."""
-  DIRECTIVE_REPEATABLE_REMOVED
-  """Non-nullable argument added to directive."""
-  REQUIRED_DIRECTIVE_ARG_ADDED
-}
-
-"""
-Represents the tuple of static information
-about a particular kind of schema change.
-"""
-type ChangeDefinition {
-  code: ChangeCode!
-  defaultSeverity: ChangeSeverity!
-  category: ChangeCategory!
-}
-
-"""An addition made to a Studio variant's changelog after a launch."""
-type ChangelogLaunchResult {
-  createdAt: Timestamp!
-  schemaTagID: ID!
-}
-
-"""Info about a change in the context of an operation it affects"""
-type ChangeOnOperation {
-  """The semantic info about this change, i.e. info about the change that doesn't depend on the operation"""
-  semanticChange: SemanticChange!
-  """Human-readable explanation of the impact of this change on the operation"""
-  impact: String
-}
-
-enum ChangeSeverity {
-  FAILURE
-  NOTICE
-}
-
-"""
-Summary of the changes for a schema diff, computed by placing the changes into categories and then
-counting the size of each category. This categorization can be done in different ways, and
-accordingly there are multiple fields here for each type of categorization.
-
-Note that if an object or interface field is added/removed, there won't be any addition/removal
-changes generated for its arguments or @deprecated usages. If an enum type is added/removed, there
-will be addition/removal changes generated for its values, but not for those values' @deprecated
-usages. Description changes won't be generated for a schema element if that element (or an
-ancestor) was added/removed.
-"""
-type ChangeSummary {
-  """
-  Counts for changes to non-field aspects of objects, input objects, and interfaces,
-  and all aspects of enums, unions, and scalars.
-  """
-  type: TypeChangeSummaryCounts!
-  """Counts for changes to fields of objects, input objects, and interfaces."""
-  field: FieldChangeSummaryCounts!
-  """Counts for all changes."""
-  total: TotalChangeSummaryCounts!
-}
-
-enum ChangeType {
-  FAILURE
-  NOTICE
-}
-
-"""Filter options available when listing checks."""
-input CheckFilterInput {
-  authors: [String!]
-  branches: [String!]
-  subgraphs: [String!]
-  status: CheckFilterInputStatusOption
-  variants: [String!]
-}
-
-"""Options for filtering CheckWorkflows by status"""
-enum CheckFilterInputStatusOption {
-  FAILED
-  PENDING
-  PASSED
-}
-
-"""The result of performing a subgraph check, including all steps."""
-type CheckPartialSchemaResult {
-  """Result of compostion run as part of the overall subgraph check."""
-  compositionValidationResult: CompositionCheckResult!
-  """Overall result of the check. This will be null if composition validation was unsuccessful."""
-  checkSchemaResult: CheckSchemaResult
-  """Whether any modifications were detected in the composed core schema."""
-  coreSchemaModified: Boolean!
-}
-
-"""The possible results of a request to initiate schema checks (either a success object or one of multiple `Error` objects)."""
-union CheckRequestResult = CheckRequestSuccess | InvalidInputError | PermissionError | PlanError
-
-"""Represents a successfully initiated execution of schema checks. This does not indicate the _result_ of the checks, only that they were initiated."""
-type CheckRequestSuccess {
-  """The URL of the Apollo Studio page for this check."""
-  targetURL: String!
-  """The unique ID for this execution of schema checks."""
-  workflowID: ID!
-}
-
-"""Input type to provide when running schema checks asynchronously for a non-federated graph."""
-input CheckSchemaAsyncInput {
-  """Configuration options for the check execution."""
-  config: HistoricQueryParametersInput!
-  """The GitHub context to associate with the check."""
-  gitContext: GitContextInput!
-  graphRef: ID @deprecated(reason: "This field is not required to be sent anymore")
-  """The URL of the GraphQL endpoint that Apollo Sandbox introspected to obtain the proposed schema. Required if `isSandbox` is `true`."""
-  introspectionEndpoint: String
-  """If `true`, the check was initiated by Apollo Sandbox."""
-  isSandbox: Boolean!
-  proposedSchemaDocument: String
-}
-
-"""The result of running schema checks on a graph variant."""
-type CheckSchemaResult {
-  """The schema diff and affected operations generated by the schema check."""
-  diffToPrevious: SchemaDiff!
-  """The URL to view the schema diff in Studio."""
-  targetUrl: String
-}
-
-type CheckWorkflow {
-  """
-  The variant provided as a base to check against. Only the differences from the
-  base schema will be tested in operations checks.
-  """
-  baseVariant: GraphVariant
-  """The timestamp when the check workflow completed."""
-  completedAt: Timestamp
-  id: ID!
-  """The name of the implementing service that was responsible for triggering the validation."""
-  implementingServiceName: String
-  """The timestamp when the check workflow started."""
-  startedAt: Timestamp
-  """Overall status of the workflow, based on the underlying task statuses."""
-  status: CheckWorkflowStatus!
-  """The set of check tasks associated with this workflow, e.g. composition, operations, etc."""
-  tasks: [CheckWorkflowTask!]!
-  """Contextual parameters supplied by the runtime environment where the check was run."""
-  gitContext: GitContext
-  createdAt: Timestamp!
-}
-
-enum CheckWorkflowStatus {
-  FAILED
-  PASSED
-  PENDING
-}
-
-interface CheckWorkflowTask {
-  completedAt: Timestamp
-  createdAt: Timestamp!
-  id: ID!
-  """
-  The status of this task. All tasks start with the PENDING status while initializing. If any
-   prerequisite task fails, then the task status becomes BLOCKED. Otherwise, if all prerequisite
-   tasks pass, then this task runs (still having the PENDING status). Once the task completes, the
-   task status will become either PASSED or FAILED.
-  """
-  status: CheckWorkflowTaskStatus!
-  """A studio UI url to view the details of this check workflow task"""
-  targetURL: String
-  """The workflow that this task belongs to."""
-  workflow: CheckWorkflow!
-}
-
-enum CheckWorkflowTaskStatus {
-  BLOCKED
-  FAILED
-  PASSED
-  PENDING
-}
-
-"""Filter options to exclude by client reference ID, client name, and client version."""
-input ClientInfoFilter {
-  name: String!
-  """Ignored"""
-  referenceID: ID
-  version: String
-}
-
-"""The result of supergraph composition that Studio performed in response to an attempted deletion of a subgraph."""
-type SubgraphRemovalResult {
-  """A list of errors that occurred during composition. Errors mean that Apollo was unable to compose the graph variant's subgraphs into a supergraph schema. If any errors are present, gateways / routers are not updated."""
-  errors: [SchemaCompositionError]!
-  """Whether this composition result resulted in a new supergraph schema passed to Uplink (`true`), or the build failed for any reason (`false`). For dry runs, this value is `true` if Uplink _would have_ been updated with the result."""
-  updatedGateway: Boolean!
-}
-
-"""The result of supergraph composition that Studio performed in response to an attempted publish of a subgraph."""
-type SubgraphPublicationResult {
-  """The generated composition config, or null if any errors occurred."""
-  compositionConfig: CompositionConfig
-  """A list of errors that occurred during composition. Errors mean that Apollo was unable to compose the graph variant's subgraphs into a supergraph schema. If any errors are present, gateways / routers are not updated."""
-  errors: [SchemaCompositionError]!
-  """Whether this composition result resulted in a new supergraph schema passed to Uplink (`true`), or the build failed for any reason (`false`). For dry runs, this value is `true` if Uplink _would have_ been updated with the result."""
-  updatedGateway: Boolean!
-  """Whether a new subgraph was created as part of this publish."""
-  wasCreated: Boolean!
-  """The URL of the Studio page for this update's associated launch, if available."""
-  launchUrl: String
-  """Human-readable text describing the launch result of the subgraph publish."""
-  launchCliCopy: String
-}
-
-type CompositionBuildInput {
-  subgraphs: [Subgraph!]!
-  version: String
-}
-
-type CompositionCheckTask implements CheckWorkflowTask {
-  completedAt: Timestamp
-  """
-  Whether the build's output supergraph core schema differs from that of the active publish for
-  the workflow's variant at the time this field executed (NOT at the time the check workflow
-  started).
-  """
-  coreSchemaModified: Boolean!
-  createdAt: Timestamp!
-  id: ID!
-  status: CheckWorkflowTaskStatus!
-  targetURL: String
-  workflow: CheckWorkflow!
-  """
-  An old version of buildResult that returns a very old GraphQL type that generally should be
-  avoided. This field will soon be deprecated.
-  """
-  result: CompositionResult
-}
-
-"""Composition configuration exposed to the gateway."""
-type CompositionConfig {
-  """The resulting API schema's SHA256 hash, represented as a hexadecimal string."""
-  schemaHash: String!
-}
-
-"""The result of supergraph composition that Studio performed."""
-type CompositionPublishResult implements CompositionResult {
-  """The unique ID for this instance of composition."""
-  graphCompositionID: ID!
-  """A list of errors that occurred during composition. Errors mean that Apollo was unable to compose the graph variant's subgraphs into a supergraph schema. If any errors are present, gateways / routers are not updated."""
-  errors: [SchemaCompositionError!]!
-  """The supergraph SDL generated by composition."""
-  supergraphSdl: GraphQLDocument
-}
-
-"""The result of supergraph composition performed by Apollo Studio, often as the result of a subgraph check or subgraph publish. See individual implementations for more details."""
-interface CompositionResult {
-  """The unique ID for this instance of composition."""
-  graphCompositionID: ID!
-  """A list of errors that occurred during composition. Errors mean that Apollo was unable to compose the graph variant's subgraphs into a supergraph schema. If any errors are present, gateways / routers are not updated."""
-  errors: [SchemaCompositionError!]!
-  """Supergraph SDL generated by composition."""
-  supergraphSdl: GraphQLDocument
-}
-
-"""The result of composition validation run by Apollo Studio during a subgraph check."""
-type CompositionCheckResult implements CompositionResult {
-  """The unique ID for this instance of composition."""
-  graphCompositionID: ID!
-  """A list of errors that occurred during composition. Errors mean that Apollo was unable to compose the graph variant's subgraphs into a supergraph schema. If any errors are present, gateways / routers are not updated."""
-  errors: [SchemaCompositionError!]!
-  """The supergraph schema document generated by composition."""
-  supergraphSdl: GraphQLDocument
-}
-
-type ContractVariantUpsertErrors {
-  """A list of all errors that occurred when attempting to create or update a contract variant."""
-  errorMessages: [String!]!
-}
-
-union ContractVariantUpsertResult = ContractVariantUpsertErrors | ContractVariantUpsertSuccess
-
-type ContractVariantUpsertSuccess {
-  """The updated contract variant"""
-  contractVariant: GraphVariant!
-  """Human-readable text describing the launch result of the contract update."""
-  launchCliCopy: String
-  """The URL of the Studio page for this update's associated launch, if available."""
-  launchUrl: String
-}
-
-"""Contains the supergraph and API schemas generated by composition."""
-type CoreSchema {
-  """The composed API schema document."""
-  apiDocument: GraphQLDocument!
-  """The composed supergraph schema document."""
-  coreDocument: GraphQLDocument!
-  """The supergraph schema document's SHA256 hash, represented as a hexadecimal string."""
-  coreHash: String!
-}
-
-union CreateOperationCollectionResult = OperationCollection | PermissionError | ValidationError
-
-"""
-Implement the DateTime<Utc> scalar
-
-The input/output is a string in RFC3339 format.
-"""
-scalar DateTime @specifiedBy(url: "https://datatracker.ietf.org/doc/html/rfc3339")
-
-union DeleteOperationCollectionResult = PermissionError
-
-"""The result of attempting to delete a graph variant."""
-type GraphVariantDeletionResult {
-  """Whether the variant was deleted or not."""
-  deleted: Boolean!
-}
-
-"""The result of a schema checks workflow that was run on a downstream variant as part of checks for the corresponding source variant. Most commonly, these downstream checks are [contract checks](https://www.apollographql.com/docs/studio/contracts#contract-checks)."""
-type DownstreamCheckResult {
-  """Whether the downstream check workflow blocks the upstream check workflow from completing."""
-  blocking: Boolean!
-  """The ID of the graph that the downstream variant belongs to."""
-  downstreamGraphID: String!
-  """The name of the downstream variant."""
-  downstreamVariantName: String!
-  """
-  The downstream checks workflow that this result corresponds to. This value is null
-  if the workflow hasn't been initialized yet, or if the downstream variant was deleted.
-  """
-  downstreamWorkflow: CheckWorkflow
-  """
-  Whether the downstream check workflow is causing the upstream check workflow to fail. This occurs
-  when the downstream check workflow is both blocking and failing. This may be null while the
-  downstream check workflow is pending.
-  """
-  failsUpstreamWorkflow: Boolean
-  """The downstream checks task that this result corresponds to."""
-  workflowTask: DownstreamCheckTask!
-}
-
-type DownstreamCheckTask implements CheckWorkflowTask {
-  completedAt: Timestamp
-  createdAt: Timestamp!
-  id: ID!
-  """
-  A list of results for all downstream checks triggered as part of the source variant's checks workflow.
-  This value is null if the task hasn't been initialized yet, or if the build task fails (the build task is a
-  prerequisite to this task). This value is _not_ null _while_ the task is running. The returned list is empty
-  if the source variant has no downstream variants.
-  """
-  results: [DownstreamCheckResult!]
-  status: CheckWorkflowTaskStatus!
-  targetURL: String
-  workflow: CheckWorkflow!
-}
-
-interface Error {
-  message: String!
-}
-
-"""A single subgraph in a supergraph. Every supergraph managed by Apollo Studio includes at least one subgraph. See https://www.apollographql.com/docs/federation/managed-federation/overview/ for more information."""
-type GraphVariantSubgraph {
-  """The subgraph's name."""
-  name: String!
-  """The URL of the subgraph's GraphQL endpoint."""
-  url: String
-  """The current user-provided version/edition of the subgraph. Typically a Git SHA or docker image ID."""
-  revision: String!
-  """The ID of the graph this subgraph belongs to."""
-  graphID: String!
-  """The name of the graph variant this subgraph belongs to."""
-  graphVariant: String!
-  """The subgraph's current active schema, used in supergraph composition for the the associated variant."""
-  activePartialSchema: SubgraphSchema!
-  """The timestamp when the subgraph was created."""
-  createdAt: Timestamp!
-  """The timestamp when the subgraph was most recently updated."""
-  updatedAt: Timestamp!
-}
-
-"""Container for a list of subgraphs composing a supergraph."""
-type GraphVariantSubgraphs {
-  """The list of underlying subgraphs."""
-  services: [GraphVariantSubgraph!]!
-}
-
-"""Counts of changes at the field level, including objects, interfaces, and input fields."""
-type FieldChangeSummaryCounts {
-  """Number of changes that are additions of fields to object, interface, and input types."""
-  additions: Int!
-  """Number of changes that are removals of fields from object, interface, and input types."""
-  removals: Int!
-  """
-  Number of changes that are field edits. This includes fields changing type and any field
-  deprecation and description changes, but also includes any argument changes and any input object
-  field changes.
-  """
-  edits: Int!
-}
-
-"""Inputs provided to the build for a contract variant, which filters types and fields from a source variant's schema."""
-type FilterBuildInput {
-  """Schema filtering rules for the build, such as tags to include or exclude from the source variant schema."""
-  filterConfig: FilterConfig!
-  """The source variant schema document's SHA256 hash, represented as a hexadecimal string."""
-  schemaHash: String!
-}
-
-type FilterCheckTask implements CheckWorkflowTask {
-  completedAt: Timestamp
-  createdAt: Timestamp!
-  id: ID!
-  status: CheckWorkflowTaskStatus!
-  targetURL: String
-  workflow: CheckWorkflow!
-}
-
-"""The filter configuration used to build a contract schema. The configuration consists of lists of tags for schema elements to include or exclude in the resulting schema."""
-type FilterConfig {
-  """Tags of schema elements to exclude from the contract schema."""
-  exclude: [String!]!
-  """Tags of schema elements to include in the contract schema."""
-  include: [String!]!
-}
-
-input FilterConfigInput {
-  """A list of tags for schema elements to exclude from the resulting contract schema."""
-  exclude: [String!]!
-  """
-  Whether to hide unreachable objects, interfaces, unions, inputs, enums and scalars from
-  the resulting contract schema. Defaults to `false`.
-  """
-  hideUnreachableTypes: Boolean! = false
-  """A list of tags for schema elements to include in the resulting contract schema."""
-  include: [String!]!
-}
-
-type GitContext {
-  commit: ID
-}
-
-"""Input type to provide when specifying the Git context for a run of schema checks."""
-input GitContextInput {
-  """The Git repository branch used in the check."""
-  branch: String
-  """The ID of the Git commit used in the check."""
-  commit: ID
-  """The username of the user who created the Git commit used in the check."""
-  committer: String
-  """The commit message of the Git commit used in the check."""
-  message: String
-  """The Git repository's remote URL."""
-  remoteUrl: String
-}
-
-"""
-Represents a graph API key, which has permissions scoped to a
-user role for a single Apollo graph.
-"""
-type GraphApiKey implements ApiKey {
-  """The timestamp when the API key was created."""
-  createdAt: Timestamp!
-  """Details of the user or graph that created the API key."""
-  createdBy: Identity
-  """The API key's ID."""
-  id: ID!
-  """The API key's name, for distinguishing it from other keys."""
-  keyName: String
-  """The permission level assigned to the API key upon creation."""
-  role: UserPermission!
-  """The value of the API key. **This is a secret credential!**"""
-  token: String!
-}
-
-"""A union of all containers that can comprise the components of a Studio graph"""
-union GraphImplementors = GraphVariantSubgraphs
-
-"""A GraphQL document, such as the definition of an operation or schema."""
-scalar GraphQLDocument
-
-"""A graph variant"""
-type GraphVariant {
-  """The variant's global identifier in the form `graphID@variant`."""
-  id: ID!
-  router: Router
-  """The filter configuration used to build a contract schema. The configuration consists of lists of tags for schema elements to include or exclude in the resulting schema."""
-  contractFilterConfig: FilterConfig
-  """
-  A human-readable description of the filter configuration of this contract variant, or null if this isn't a contract
-  variant.
-  """
-  contractFilterConfigDescription: String
-  """The graph that this variant belongs to."""
-  graph: Graph!
-  """Latest approved launch for the variant, and what is served through Uplink."""
-  latestApprovedLaunch: Launch
-  """Latest launch for the variant, whether successful or not."""
-  latestLaunch: Launch
-  """The variant's name (e.g., `staging`)."""
-  name: String!
-  """Which permissions the current user has for interacting with this variant"""
-  permissions: GraphVariantPermissions!
-  readme: Readme!
-  """The variant this variant is derived from. This property currently only exists on contract variants."""
-  sourceVariant: GraphVariant
-  """A list of the saved [operation collections](https://www.apollographql.com/docs/studio/explorer/operation-collections/) associated with this variant."""
-  operationCollections: [OperationCollection!]!
-  """The URL of the variant's GraphQL endpoint for query and mutation operations. For subscription operations, use `subscriptionUrl`."""
-  url: String
-  """The URL of the variant's GraphQL endpoint for subscription operations."""
-  subscriptionUrl: String
-  """The details of the variant's most recent publication."""
-  latestPublication: SchemaPublication
-  """A list of the subgraphs included in this variant. This value is null for non-federated variants. Set `includeDeleted` to `true` to include deleted subgraphs."""
-  subgraphs(includeDeleted: Boolean! = false): [GraphVariantSubgraph!]
-  """Returns the details of the subgraph with the provided `name`, or null if this variant doesn't include a subgraph with that name."""
-  subgraph(name: ID!): GraphVariantSubgraph
-}
-
-"""Result of looking up a variant by ref"""
-union GraphVariantLookup = GraphVariant | InvalidRefFormat
-
-"""Modifies a variant of a graph, also called a schema tag in parts of our product."""
-type GraphVariantMutation {
-  """
-  _Asynchronously_ kicks off operation checks for a proposed non-federated
-  schema change against its associated graph.
-
-  Returns a `CheckRequestSuccess` object with a workflow ID that you can use
-  to check status, or an error object if the checks workflow failed to start.
-  """
-  submitCheckSchemaAsync(input: CheckSchemaAsyncInput!): CheckRequestResult!
-  """
-  _Asynchronously_ kicks off composition and operation checks for a proposed subgraph schema change against its associated supergraph.
-
-  Returns a `CheckRequestSuccess` object with a workflow ID that you can use
-  to check status, or an error object if the checks workflow failed to start.
-  """
-  submitSubgraphCheckAsync(input: SubgraphCheckAsyncInput!): CheckRequestResult!
-  """Updates the [README](https://www.apollographql.com/docs/studio/org/graphs/#the-readme-page) of this variant."""
-  updateVariantReadme(
-    """The full new text of the README, as a Markdown-formatted string."""
-    readme: String!
-  ): GraphVariant
-  """Delete the variant."""
-  delete: GraphVariantDeletionResult!
-}
-
-"""Individual permissions for the current user when interacting with a particular Studio graph variant."""
-type GraphVariantPermissions {
-  """Whether the currently authenticated user is permitted to manage/update this variant's build configuration (e.g., build pipeline version)."""
-  canManageBuildConfig: Boolean!
-  """Whether the currently authenticated user is permitted to manage/update cloud routers"""
-  canManageCloudRouter: Boolean!
-  """Whether the currently authenticated user is permitted to update variant-level settings for the Apollo Studio Explorer."""
-  canManageExplorerSettings: Boolean!
-  """Whether the currently authenticated user is permitted to publish schemas to this variant."""
-  canPushSchemas: Boolean!
-  """Whether the currently authenticated user is permitted to view this variant's build configuration details (e.g., build pipeline version)."""
-  canQueryBuildConfig: Boolean!
-  """Whether the currently authenticated user is permitted to view details regarding cloud routers"""
-  canQueryCloudRouter: Boolean!
-  """Whether the currently authenticated user is permitted to view cloud router logs"""
-  canQueryCloudRouterLogs: Boolean!
-  """Whether the currently authenticated user is permitted to download schemas associated to this variant."""
-  canQuerySchemas: Boolean!
-  """Whether the currently authenticated user is permitted to update the README for this variant."""
-  canUpdateVariantReadme: Boolean!
-  canCreateCollectionInVariant: Boolean!
-  canShareCollectionInVariant: Boolean!
-}
-
-input HistoricQueryParameters {
-  from: String = "-86400"
-  to: String = "0"
-  """Minimum number of requests within the window for a query to be considered."""
-  queryCountThreshold: Int = 1
-  """
-  Number of requests within the window for a query to be considered, relative to
-  total request count. Expected values are between 0 and 0.05 (minimum 5% of total
-  request volume)
-  """
-  queryCountThresholdPercentage: Float = 0
-  """A list of operation IDs to filter out during validation."""
-  ignoredOperations: [ID!] = null
-  """A list of clients to filter out during validation."""
-  excludedClients: [ClientInfoFilter!] = null
-  """A list of operation names to filter out during validation."""
-  excludedOperationNames: [OperationNameFilterInput!] = null
-  """
-  A list of variants to include in the validation. If no variants are provided
-  then this defaults to the "current" variant along with the base variant. The
-  base variant indicates the schema that generates diff and marks the metrics that
-  are checked for broken queries. We union this base variant with the untagged values('',
-  same as null inside of `in`, and 'current') in this metrics fetch. This strategy
-  supports users who have not tagged their metrics or schema.
-  """
-  includedVariants: [String!] = null
-}
-
-"""Input type to provide when specifying configuration details for schema checks."""
-input HistoricQueryParametersInput {
-  """Clients to be excluded from check."""
-  excludedClients: [ClientInfoFilter!]
-  """Operations to be ignored in this schema check, specified by operation name."""
-  excludedOperationNames: [OperationNameFilterInput!]
-  """Start time for operations to be checked against. Specified as either a) an ISO formatted date/time string or b) a negative number of seconds relative to the time the check request was submitted."""
-  from: String
-  """Operations to be ignored in this schema check, specified by ID."""
-  ignoredOperations: [ID!]
-  """Graph variants to be included in check."""
-  includedVariants: [String!]
-  """Maximum number of queries to be checked against the change."""
-  queryCountThreshold: Int
-  """Only fail check if this percentage of operations would be negatively impacted."""
-  queryCountThresholdPercentage: Float
-  """End time for operations to be checked against. Specified as either a) an ISO formatted date/time string or b) a negative number of seconds relative to the time the check request was submitted."""
-  to: String
-}
-
-"""An identity (such as a `User` or `Graph`) in Apollo Studio. See implementing types for details."""
-interface Identity {
-  """Returns a representation of the identity as an `Actor` type."""
-  asActor: Actor!
-  """The identity's identifier, which is unique among objects of its type."""
-  id: ID!
-  """The identity's human-readable name."""
-  name: String!
-}
-
-type InternalIdentity implements Identity {
-  accounts: [Organization!]!
-  asActor: Actor!
-  email: String
-  id: ID!
-  name: String!
-}
-
-input IntrospectionDirectiveInput {
-  name: String!
-  description: String
-  locations: [IntrospectionDirectiveLocation!]!
-  args: [IntrospectionInputValueInput!]!
-  isRepeatable: Boolean
-}
-
-"""__DirectiveLocation introspection type"""
-enum IntrospectionDirectiveLocation {
-  """Location adjacent to a query operation."""
-  QUERY
-  """Location adjacent to a mutation operation."""
-  MUTATION
-  """Location adjacent to a subscription operation."""
-  SUBSCRIPTION
-  """Location adjacent to a field."""
-  FIELD
-  """Location adjacent to a fragment definition."""
-  FRAGMENT_DEFINITION
-  """Location adjacent to a fragment spread."""
-  FRAGMENT_SPREAD
-  """Location adjacent to an inline fragment."""
-  INLINE_FRAGMENT
-  """Location adjacent to a variable definition."""
-  VARIABLE_DEFINITION
-  """Location adjacent to a schema definition."""
-  SCHEMA
-  """Location adjacent to a scalar definition."""
-  SCALAR
-  """Location adjacent to an object type definition."""
-  OBJECT
-  """Location adjacent to a field definition."""
-  FIELD_DEFINITION
-  """Location adjacent to an argument definition."""
-  ARGUMENT_DEFINITION
-  """Location adjacent to an interface definition."""
-  INTERFACE
-  """Location adjacent to a union definition."""
-  UNION
-  """Location adjacent to an enum definition."""
-  ENUM
-  """Location adjacent to an enum value definition."""
-  ENUM_VALUE
-  """Location adjacent to an input object type definition."""
-  INPUT_OBJECT
-  """Location adjacent to an input object field definition."""
-  INPUT_FIELD_DEFINITION
-}
-
-"""__EnumValue introspection type"""
-input IntrospectionEnumValueInput {
-  name: String!
-  description: String
-  isDeprecated: Boolean!
-  deprecationReason: String
-}
-
-"""__Field introspection type"""
-input IntrospectionFieldInput {
-  name: String!
-  description: String
-  args: [IntrospectionInputValueInput!]!
-  type: IntrospectionTypeInput!
-  isDeprecated: Boolean!
-  deprecationReason: String
-}
-
-"""__Value introspection type"""
-input IntrospectionInputValueInput {
-  name: String!
-  description: String
-  type: IntrospectionTypeInput!
-  defaultValue: String
-  isDeprecated: Boolean
-  deprecationReason: String
-}
-
-"""__Schema introspection type"""
-input IntrospectionSchemaInput {
-  types: [IntrospectionTypeInput!]
-  queryType: IntrospectionTypeRefInput!
-  mutationType: IntrospectionTypeRefInput
-  subscriptionType: IntrospectionTypeRefInput
-  directives: [IntrospectionDirectiveInput!]!
-  description: String
-}
-
-"""__Type introspection type"""
-input IntrospectionTypeInput {
-  kind: IntrospectionTypeKind!
-  name: String
-  description: String
-  specifiedByUrl: String
-  fields: [IntrospectionFieldInput!]
-  interfaces: [IntrospectionTypeInput!]
-  possibleTypes: [IntrospectionTypeInput!]
-  enumValues: [IntrospectionEnumValueInput!]
-  inputFields: [IntrospectionInputValueInput!]
-  ofType: IntrospectionTypeInput
-}
-
-enum IntrospectionTypeKind {
-  """Indicates this type is a scalar."""
-  SCALAR
-  """Indicates this type is an object. 'fields' and 'interfaces' are valid fields."""
-  OBJECT
-  """
-  Indicates this type is an interface. 'fields' and 'possibleTypes' are valid
-  fields
-  """
-  INTERFACE
-  """Indicates this type is a union. 'possibleTypes' is a valid field."""
-  UNION
-  """Indicates this type is an enum. 'enumValues' is a valid field."""
-  ENUM
-  """Indicates this type is an input object. 'inputFields' is a valid field."""
-  INPUT_OBJECT
-  """Indicates this type is a list. 'ofType' is a valid field."""
-  LIST
-  """Indicates this type is a non-null. 'ofType' is a valid field."""
-  NON_NULL
-}
-
-"""Shallow __Type introspection type"""
-input IntrospectionTypeRefInput {
-  name: String!
-  kind: String
-}
-
-"""An error caused by providing invalid input for a task, such as schema checks."""
-type InvalidInputError {
-  """The error message."""
-  message: String!
-}
-
-"""This object is returned when a request to fetch a Studio graph variant provides an invalid graph ref."""
-type InvalidRefFormat implements Error {
-  message: String!
-}
-
-"""Represents the complete process of making a set of updates to a deployed graph variant."""
-type Launch {
-  """The unique identifier for this launch."""
-  id: ID!
-  """The ID of the launch's associated graph."""
-  graphId: String!
-  """The name of the launch's associated variant."""
-  graphVariant: String!
-  order: OrderOrError!
-  """The timestamp when the launch was approved."""
-  approvedAt: Timestamp
-  """The associated build for this launch (a build includes schema composition and contract filtering). This value is null until the build is initiated."""
-  build: Build
-  """The inputs provided to this launch's associated build, including subgraph schemas and contract filters."""
-  buildInput: BuildInput!
-  """The timestamp when the launch completed. This value is null until the launch completes."""
-  completedAt: Timestamp
-  """The timestamp when the launch was initiated."""
-  createdAt: Timestamp!
-  """Contract launches that were triggered by this launch."""
-  downstreamLaunches: [Launch!]!
-  """Whether the launch completed."""
-  isCompleted: Boolean
-  """Whether the result of the launch has been published to the associated graph and variant. This is always false for a failed launch."""
-  isPublished: Boolean
-  """The most recent launch sequence step that has started but not necessarily completed."""
-  latestSequenceStep: LaunchSequenceStep
-  """A specific publication of a graph variant pertaining to this launch."""
-  publication: SchemaPublication
-  """A list of results from the completed launch. The items included in this list vary depending on whether the launch succeeded, failed, or was superseded."""
-  results: [LaunchResult!]!
-  """Cloud router configuration associated with this build event. It will be non-null for any cloud-router variant, and null for any not cloudy variant/graph."""
-  routerConfig: String
-  """A list of all serial steps in the launch sequence. This list can change as the launch progresses. For example, a `LaunchCompletedStep` is appended after a launch completes."""
-  sequence: [LaunchSequenceStep!]!
-  """A shortened version of `Launch.id` that includes only the first 8 characters."""
-  shortenedID: String!
-  """The launch's status. If a launch is superseded, its status remains `LAUNCH_INITIATED`. To check for a superseded launch, use `supersededAt`."""
-  status: LaunchStatus!
-  """A list of subgraph changes that are included in this launch."""
-  subgraphChanges: [SubgraphChange!]
-  """The timestamp when this launch was superseded by another launch. If an active launch is superseded, it terminates."""
-  supersededAt: Timestamp
-  """The launch that superseded this launch, if any. If an active launch is superseded, it terminates."""
-  supersededBy: Launch
-  """The source variant launch that caused this launch to be initiated. This value is present only for contract variant launches. Otherwise, it's null."""
-  upstreamLaunch: Launch
-}
-
-"""Types of results that can be associated with a `Launch`"""
-union LaunchResult = ChangelogLaunchResult
-
-"""The timing details for the build step of a launch."""
-type LaunchSequenceBuildStep {
-  """The timestamp when the step completed."""
-  completedAt: Timestamp
-  """The timestamp when the step started."""
-  startedAt: Timestamp
-}
-
-"""The timing details for the checks step of a launch."""
-type LaunchSequenceCheckStep {
-  """The timestamp when the step completed."""
-  completedAt: Timestamp
-  """The timestamp when the step started."""
-  startedAt: Timestamp
-}
-
-"""The timing details for the completion step of a launch."""
-type LaunchSequenceCompletedStep {
-  """The timestamp when the step (and therefore the launch) completed."""
-  completedAt: Timestamp
-}
-
-"""The timing details for the initiation step of a launch."""
-type LaunchSequenceInitiatedStep {
-  """The timestamp when the step (and therefore the launch) started."""
-  startedAt: Timestamp
-}
-
-"""The timing details for the publish step of a launch."""
-type LaunchSequencePublishStep {
-  """The timestamp when the step completed."""
-  completedAt: Timestamp
-  """The timestamp when the step started."""
-  startedAt: Timestamp
-}
-
-"""Represents the various steps that occur in sequence during a single launch."""
-union LaunchSequenceStep = LaunchSequenceBuildStep | LaunchSequenceCheckStep | LaunchSequenceCompletedStep | LaunchSequenceInitiatedStep | LaunchSequencePublishStep | LaunchSequenceSupersededStep
-
-"""The timing details for the superseded step of a launch. This step occurs only if the launch is superseded by another launch."""
-type LaunchSequenceSupersededStep {
-  """The timestamp when the step completed, thereby ending the execution of this launch in favor of the superseding launch."""
-  completedAt: Timestamp
-}
-
-enum LaunchStatus {
-  LAUNCH_COMPLETED
-  LAUNCH_FAILED
-  LAUNCH_INITIATED
-}
-
-enum LogLevel {
-  WARN
-  INFO
-  ERROR
-  DEBUG
-}
-
-type LogMessage {
-  """Timestamp in UTC"""
-  timestamp: DateTime!
-  """Log message contents"""
-  message: String!
-  """Log level"""
-  level: LogLevel!
-}
-
-type Mutation {
-  """Provides access to mutation fields for modifying a Studio graph with the provided ID."""
-  graph(id: ID!): GraphMutation
-  """
-  Provides access to mutation fields for modifying an Apollo user with the
-  provided ID.
-  """
-  user(id: ID!): UserMutation
-  """Creates an [operation collection](https://www.apollographql.com/docs/studio/explorer/operation-collections/) for a given variant, or creates a [sandbox collection](https://www.apollographql.com/docs/studio/explorer/operation-collections/#sandbox-collections) without an associated variant."""
-  createOperationCollection(
-    """The collection's description."""
-    description: String
-    """Whether the collection is a [sandbox collection](https://www.apollographql.com/docs/studio/explorer/operation-collections/#sandbox-collections)."""
-    isSandbox: Boolean!
-    """Whether the collection is shared across its associated organization."""
-    isShared: Boolean!
-    """The minimum role a user needs to edit this collection. Valid values: null, CONSUMER, OBSERVER, DOCUMENTER, CONTRIBUTOR, GRAPH_ADMIN. This value is ignored if `isShared` is `false`. The default value is  `GRAPH_ADMIN`."""
-    minEditRole: UserPermission
-    """The collection's name."""
-    name: String!
-    """The [graph ref](https://www.apollographql.com/docs/rover/conventions/#graph-refs) of the graph variants to associate the collection with."""
-    variantRefs: [ID!]
-  ): CreateOperationCollectionResult!
-  operationCollection(id: ID!): OperationCollectionMutation
-}
-
-"""
-ISO 8601 combined date and time without timezone.
-
-# Examples
-
-* `2015-07-01T08:59:60.123`,
-"""
-scalar NaiveDateTime
-
-type NamedIntrospectionArg {
-  name: String
-  description: String
-}
-
-"""
-The shared fields for a named introspection type. Currently this is returned for the
-top level value affected by a change. In the future, we may update this
-type to be an interface, which is extended by the more specific types:
-scalar, object, input object, union, interface, and enum
-
-For an in-depth look at where these types come from, see:
-https://github.com/DefinitelyTyped/DefinitelyTyped/blob/659eb50d3/types/graphql/utilities/introspectionQuery.d.ts#L31-L37
-"""
-type NamedIntrospectionType {
-  kind: IntrospectionTypeKind
-  name: String
-  description: String
-}
-
-"""
-Introspection values that can be children of other types for changes, such
-as input fields, objects in interfaces, enum values. In the future, this
-value could become an interface to allow fields specific to the types
-returned.
-"""
-type NamedIntrospectionValue {
-  name: String
-  description: String
-  printedType: String
-}
-
-"""An error that occurs when a requested object is not found."""
-type NotFoundError implements Error {
-  """The error message."""
-  message: String!
-}
-
-"""A list of saved GraphQL operations."""
-type OperationCollection {
-  """The timestamp when the collection was created."""
-  createdAt: Timestamp!
-  """The user or other entity that created the collection."""
-  createdBy: Identity
-  """The collection's description. A `null` description was never set, and empty string description was set to be empty string by a user, or other entity."""
-  description: String
-  id: ID!
-  """Whether the current user has marked the collection as a favorite."""
-  isFavorite: Boolean!
-  """Whether the collection is a [sandbox collection](https://www.apollographql.com/docs/studio/explorer/operation-collections/#sandbox-collections)."""
-  isSandbox: Boolean!
-  """Whether the collection is shared across its associated organization."""
-  isShared: Boolean!
-  """The timestamp when the collection was most recently updated."""
-  lastUpdatedAt: Timestamp!
-  """The user or other entity that most recently updated the collection."""
-  lastUpdatedBy: Identity
-  """The minimum role a user needs to edit this collection. Valid values: null, CONSUMER, OBSERVER, DOCUMENTER, CONTRIBUTOR, GRAPH_ADMIN. This value is always `null` if `isShared` is `false`. If `null` when `isShared` is `true`, the minimum role is `GRAPH_ADMIN`."""
-  minEditRole: UserPermission
-  """The collection's name."""
-  name: String!
-  """Returns the operation in the collection with the specified ID, if any."""
-  operation(id: ID!): OperationCollectionEntryResult
-  """A list of the GraphQL operations that belong to the collection."""
-  operations: [OperationCollectionEntry!]!
-  """The permissions that the current user has for the collection."""
-  permissions: OperationCollectionPermissions!
-}
-
-"""A saved operation entry within an Operation Collection."""
-type OperationCollectionEntry {
-  """The timestamp when the entry was created."""
-  createdAt: Timestamp!
-  """The user or other entity that created the entry."""
-  createdBy: Identity
-  """Details of the entry's associated operation, such as its `body` and `variables`."""
-  currentOperationRevision: OperationCollectionEntryState!
-  id: ID!
-  """The timestamp when the entry was most recently updated."""
-  lastUpdatedAt: Timestamp!
-  """The user or other entity that most recently updated the entry."""
-  lastUpdatedBy: Identity
-  """The entry's name."""
-  name: String!
-  """The entry's lexicographical ordering index within its containing collection."""
-  orderingIndex: String!
-}
-
-"""Provides fields for modifying an operation in a collection."""
-type OperationCollectionEntryMutation {
-  """Updates the name of an operation."""
-  updateName(name: String!): UpdateOperationCollectionEntryResult
-  """Updates the body, headers, and/or variables of an operation."""
-  updateValues(operationInput: OperationCollectionEntryStateInput!): UpdateOperationCollectionEntryResult
-}
-
-union OperationCollectionEntryMutationResult = NotFoundError | OperationCollectionEntryMutation | PermissionError
-
-"""Possible return values when querying for an entry in an operation collection (either the entry object or an `Error` object)."""
-union OperationCollectionEntryResult = NotFoundError | OperationCollectionEntry
-
-"""The most recent body, variable and header values of a saved operation entry."""
-type OperationCollectionEntryState {
-  """The raw body of the entry's GraphQL operation."""
-  body: String!
-  """Headers for the entry's GraphQL operation."""
-  headers: [OperationHeader!]
-  """Variables for the entry's GraphQL operation, as a JSON string."""
-  variables: String
-}
-
-"""Fields for creating or modifying an operation collection entry."""
-input OperationCollectionEntryStateInput {
-  """The operation's query body."""
-  body: String!
-  """The operation's headers."""
-  headers: [OperationHeaderInput!]
-  """The operation's variables."""
-  variables: String
-}
-
-"""Provides fields for modifying an [operation collection](https://www.apollographql.com/docs/studio/explorer/operation-collections/)."""
-type OperationCollectionMutation {
-  """Adds an operation to this collection."""
-  addOperation(name: String!, operationInput: OperationCollectionEntryStateInput!): AddOperationCollectionEntryResult
-  """Adds operations to this collection."""
-  addOperations(operations: [AddOperationInput!]!): AddOperationCollectionEntriesResult
-  """Deletes this operation collection. This also deletes all of the collection's associated operations."""
-  delete: DeleteOperationCollectionResult
-  """Deletes an operation from this collection."""
-  deleteOperation(id: ID!): RemoveOperationCollectionEntryResult
-  operation(id: ID!): OperationCollectionEntryMutationResult
-  """Updates the minimum role a user needs to be able to modify this collection."""
-  setMinEditRole(editRole: UserPermission): UpdateOperationCollectionResult
-  """Updates this collection's description."""
-  updateDescription(description: String): UpdateOperationCollectionResult
-  """Updates whether the current user has marked this collection as a favorite."""
-  updateIsFavorite(isFavorite: Boolean!): UpdateOperationCollectionResult
-  """Updates whether this collection is shared across its associated organization."""
-  updateIsShared(isShared: Boolean!): UpdateOperationCollectionResult
-  """Updates this operation collection's name."""
-  updateName(name: String!): UpdateOperationCollectionResult
-}
-
-"""Whether the current user can perform various actions on the associated collection."""
-type OperationCollectionPermissions {
-  """Whether the current user can edit operations in the associated collection."""
-  canEditOperations: Boolean!
-  """Whether the current user can delete or update the associated collection's metadata, such as its name and description."""
-  canManage: Boolean!
-  """Whether the current user can read operations in the associated collection."""
-  canReadOperations: Boolean!
-}
-
-union OperationCollectionResult = NotFoundError | OperationCollection | PermissionError | ValidationError
-
-"""Saved headers on a saved operation."""
-type OperationHeader {
-  """The header's name."""
-  name: String!
-  """The header's value."""
-  value: String!
-}
-
-input OperationHeaderInput {
-  """The header's name."""
-  name: String!
-  """The header's value."""
-  value: String!
-}
-
-"""Options to filter by operation name."""
-input OperationNameFilterInput {
-  """name of the operation set by the user and reported alongside metrics"""
-  name: String!
-  version: String
-}
-
-type OperationsCheckResult {
-  id: ID!
-  """Indication of the success of the change, either failure, warning, or notice."""
-  checkSeverity: ChangeSeverity!
-  """Number of operations that were validated during schema diff"""
-  numberOfCheckedOperations: Int!
-  """List of schema changes with associated affected clients and operations"""
-  changes: [Change!]!
-  """Summary/counts for all changes in diff"""
-  changeSummary: ChangeSummary!
-  """Operations affected by all changes in diff"""
-  affectedQueries: [AffectedQuery!]
-  """Number of affected query operations that are neither marked as SAFE or IGNORED"""
-  numberOfAffectedOperations: Int!
-  createdAt: Timestamp!
-}
-
-type OperationsCheckTask implements CheckWorkflowTask {
-  completedAt: Timestamp
-  createdAt: Timestamp!
-  id: ID!
-  status: CheckWorkflowTaskStatus!
-  targetURL: String
-  workflow: CheckWorkflow!
-  """
-  The result of the operations check. This will be null when the task is initializing or running,
-  or when the build task fails (which is a prerequisite task to this one).
-  """
-  result: OperationsCheckResult
-}
-
-type Order {
-  id: ID!
-  orderType: OrderType!
-  status: OrderStatus!
-  reason: String
-  logs(first: Int, offset: Int): [LogMessage!]!
-  router: Router!
-}
-
-union OrderOrError = Order
-
-enum OrderStatus {
-  PENDING
-  COMPLETED
-  ROLLING_BACK
-  ERRORED
-  SUPERSEDED
-}
-
-enum OrderType {
-  CREATE_ROUTER
-  DESTROY_ROUTER
-  UPDATE_ROUTER
-}
-
-"""The schema for a single published subgraph in Studio."""
-type SubgraphSchema {
-  """The subgraph schema document as SDL."""
-  sdl: String!
-}
-
-"""
-Input for registering a partial schema to an implementing service.
-One of the fields must be specified (validated server-side).
-
-If a new partialSchemaSDL is passed in, this operation will store it before
-creating the association.
-
-If both the sdl and hash are specified, an error will be thrown if the provided
-hash doesn't match our hash of the sdl contents. If the sdl field is specified,
-the hash does not need to be and will be computed server-side.
-"""
-input PartialSchemaInput {
-  """
-  Contents of the partial schema in SDL syntax, but may reference types
-  that aren't defined in this document
-  """
-  sdl: String
-  """
-  Hash of the partial schema to associate; error is thrown if only the hash is
-  specified and the hash has not been seen before
-  """
-  hash: String
-}
-
-"""An error that occurs when the current user doesn't have sufficient permissions to perform an action."""
-type PermissionError implements Error {
-  """The error message."""
-  message: String!
-}
-
-"""An error related to an organization's Apollo Studio plan."""
-type PlanError {
-  """The error message."""
-  message: String!
-}
-
-type Query {
-  """Returns the root URL of the Apollo Studio frontend."""
-  frontendUrlRoot: String!
-  """Returns details of the graph with the provided ID."""
-  graph(id: ID!): Graph
-  """Returns details of the authenticated `User` or `Graph` executing this query. If this is an unauthenticated query (i.e., no API key is provided), this field returns null."""
-  me: Identity
-  """Returns details of the Studio organization with the provided ID."""
-  organization(id: ID!): Organization
-  """Returns details of the Apollo user with the provided ID."""
-  user(id: ID!): User
-  """Returns details of a Studio graph variant with the provided graph ref. A graph ref has the format `graphID@variantName` (or just `graphID` for the default variant `current`). Returns null if the graph or variant doesn't exist, or if the graph isn't accessible by the current actor."""
-  variant(ref: ID!): GraphVariantLookup
-  """Returns the [operation collection](https://www.apollographql.com/docs/studio/explorer/operation-collections/) for the provided ID."""
-  operationCollection(id: ID!): OperationCollectionResult!
-}
-
-"""The README documentation for a graph variant, which is displayed in Studio."""
-type Readme {
-  """The contents of the README in plaintext."""
-  content: String!
-  """The README's unique ID. `a15177c0-b003-4837-952a-dbfe76062eb1` for the default README"""
-  id: ID!
-  """The actor that most recently updated the README (usually a `User`). `null` for the default README, or if the `User` was deleted."""
-  lastUpdatedBy: Identity
-  """The timestamp when the README was most recently updated. `null` for the default README"""
-  lastUpdatedTime: Timestamp
-}
-
-union RemoveOperationCollectionEntryResult = OperationCollection | PermissionError
-
-type Router {
-  """
-  Last time when the Cloud Router was updated
-
-  If the Cloud Router was never updated, this value will be null
-  """
-  updatedAt: NaiveDateTime
-  """Current status of the Cloud Router"""
-  status: RouterStatus!
-  """Current version of the Cloud Router"""
-  routerVersion: RouterVersion!
-  """
-  URL where the Cloud Router can be found
-
-  This will be null if the Cloud Router is in a deleted status
-  """
-  routerUrl: String
-  """Retrieves a specific Order related to this Cloud Router"""
-  order(orderId: ID!): Order
-  """Retrieves all Orders related to this Cloud Router"""
-  orders(first: Int, offset: Int): [Order!]!
-  """Return the list of secrets for this Cloud Router with their hash values"""
-  secrets: [Secret!]!
-}
-
-enum RouterStatus {
-  CREATING
-  UPDATING
-  DELETING
-  ROLLING_BACK
-  RUNNING
-  DELETED
-}
-
-type RouterVersion {
-  version: String!
-  core: String!
-  build: String!
-  status: Status!
-  configVersion: String!
-  configSchema: String!
-}
-
-"""A GraphQL schema document and associated metadata."""
-type Schema {
-  """The GraphQL schema document's SHA256 hash, represented as a hexadecimal string."""
-  hash: ID!
-  """The GraphQL schema document."""
-  document: GraphQLDocument!
-}
-
-"""An error that occurred while running schema composition on a set of subgraph schemas."""
-type SchemaCompositionError {
-  """A human-readable message describing the error."""
-  message: String!
-  """Source locations related to the error."""
-  locations: [SourceLocation]!
-  """A machine-readable error code."""
-  code: String
-}
-
-"""The result of computing the difference between two schemas, usually as part of schema checks."""
-type SchemaDiff {
-  """Indicates the overall safety of the changes included in the diff, based on operation history (e.g., `FAILURE` or `NOTICE`)."""
-  severity: ChangeSeverity!
-  """A list of all schema changes in the diff, including their severity."""
-  changes: [Change!]!
-  """Numeric summaries for each type of change in the diff."""
-  changeSummary: ChangeSummary!
-  """Operations affected by all changes in the diff."""
-  affectedQueries: [AffectedQuery!]
-  """The number of GraphQL operations that were validated during the check."""
-  numberOfCheckedOperations: Int
-  """The number of GraphQL operations affected by the diff's changes that are neither marked as safe nor ignored."""
-  numberOfAffectedOperations: Int!
-}
-
-"""Contains details for an individual publication of an individual graph variant."""
-type SchemaPublication {
-  """
-  The variant that was published to."
-  """
-  variant: GraphVariant!
-  """The schema that was published to the variant."""
-  schema: Schema!
-  """The result of federated composition executed for this publication. This result includes either a supergraph schema or error details, depending on whether composition succeeded. This value is null when the publication is for a non-federated graph."""
-  compositionResult: CompositionResult
-  """The timestamp when the variant was published to."""
-  publishedAt: Timestamp!
-  """A schema diff comparing against the schema from the most recent previous successful publication."""
-  diffToPrevious: SchemaDiff
-}
-
-type Secret {
-  createdAt: DateTime!
-  name: String!
-  hash: String!
-}
-
-type SemanticChange {
-  """Semantic metadata about the type of change"""
-  definition: ChangeDefinition!
-  """Top level node affected by the change"""
-  parentNode: NamedIntrospectionType
-  """
-  Node related to the top level node that was changed, such as a field in an object,
-  a value in an enum or the object of an interface
-  """
-  childNode: NamedIntrospectionValue
-  """Target arg of change made."""
-  argNode: NamedIntrospectionArg
-}
-
-"""
-A graph in Apollo Studio represents a graph in your organization.
-Each graph has one or more variants, which correspond to the different environments where that graph runs (such as staging and production).
-Each variant has its own GraphQL schema, which means schemas can differ between environments.
-"""
-type Graph implements Identity {
-  """The organization that this graph belongs to."""
-  account: Organization
-  """A list of the graph API keys that are active for this graph."""
-  apiKeys: [GraphApiKey!]
-  """Provides a view of the graph as an `Actor` type."""
-  asActor: Actor!
-  """Get a check workflow for this graph by its ID"""
-  checkWorkflow(id: ID!): CheckWorkflow
-  """The graph's globally unique identifier."""
-  id: ID!
-  """Permissions of the current user in this graph."""
-  myRole: UserPermission
-  name: String!
-  """Describes the permissions that the active user has for this graph."""
-  roles: GraphRoles
-  """The graph's name."""
-  title: String!
-  """
-  Provides details of the graph variant with the provided `name`, if a variant
-  with that name exists for this graph. Otherwise, returns null.
-
-   For a list of _all_ variants associated with a graph, use `Graph.variants` instead.
-  """
-  variant(name: String!): GraphVariant
-  """A list of the variants for this graph."""
-  variants: [GraphVariant!]!
-  """Get a GraphQL document by hash"""
-  document(hash: SHA256): GraphQLDocument
-  """Get check workflows for this graph ordered by creation time, most recent first."""
-  checkWorkflows(limit: Int! = 100, filter: CheckFilterInput): [CheckWorkflow!]!
-}
-
-"""Provides access to mutation fields for managing Studio graphs and subgraphs."""
-type GraphMutation {
-  """Generates a new graph API key for this graph with the specified permission level."""
-  newKey(keyName: String, role: UserPermission! = GRAPH_ADMIN): GraphApiKey!
-  """Deletes the existing graph API key with the provided ID, if any."""
-  removeKey(
-    """API key ID"""
-    id: ID!
-  ): Void
-  """Sets a new name for the graph API key with the provided ID, if any. This does not invalidate the key or change its value."""
-  renameKey(id: ID!, newKeyName: String): GraphApiKey
-  """Creates a contract schema from a source variant and a set of filter configurations"""
-  upsertContractVariant(
-    """The name of the contract variant, e.g. `public-api`. Once set, this value cannot be changed."""
-    contractVariantName: String!
-    """The filter configuration used to build a contract schema. The configuration consists of lists of tags for schema elements to include or exclude in the resulting schema."""
-    filterConfig: FilterConfigInput!
-    """Whether a launch and schema publish should be initiated after updating configuration. Defaults to `true`."""
-    initiateLaunch: Boolean! = true
-    """The graphRef of the variant the contract will be derived from, e.g. `my-graph@production`. Once set, this value cannot be changed."""
-    sourceVariant: String
-  ): ContractVariantUpsertResult!
-  """Make changes to a graph variant."""
-  variant(name: String!): GraphVariantMutation
-  """Publish a schema to this variant, either via a document or an introspection query result."""
-  uploadSchema(schema: IntrospectionSchemaInput, schemaDocument: String, tag: String!, historicParameters: HistoricQueryParameters, overrideComposedSchema: Boolean! = false, errorOnBadRequest: Boolean! = true, gitContext: GitContextInput): SchemaPublicationResult
-  """
-  Checks a proposed schema against the schema that has been published to
-  a particular variant, using metrics corresponding to `historicParameters`.
-  Callers can set `historicParameters` directly or rely on defaults set in the
-  graph's check configuration (7 days by default).
-  If they do not set `historicParameters` but set `useMaximumRetention`,
-  validation will use the maximum retention the graph has access to.
-  """
-  checkSchema(
-    """
-    Only one of proposedSchema, proposedSchemaDocument, and proposedSchemaHash
-    may be specified
-    """
-    proposedSchema: IntrospectionSchemaInput
-    proposedSchemaDocument: String
-    proposedSchemaHash: String
-    baseSchemaTag: String = "current"
-    gitContext: GitContextInput
-    historicParameters: HistoricQueryParameters
-    useMaximumRetention: Boolean
-    isSandboxCheck: Boolean! = false
-    """If this check is triggered for an sdl fetched using introspection, this is the endpoint where that schema was being served."""
-    introspectionEndpoint: String
-    """Deprecated and ignored."""
-    frontend: String
-  ): CheckSchemaResult!
-  """Publish to a subgraph. If composition is successful, this will update running routers."""
-  publishSubgraph(graphVariant: String!, name: String!, url: String, revision: String!, activePartialSchema: PartialSchemaInput!, gitContext: GitContextInput): SubgraphPublicationResult
-  """Removes a subgraph. If composition is successful, this will update running routers."""
-  removeImplementingServiceAndTriggerComposition(
-    graphVariant: String!
-    name: String!
-    """Do not remove the service, but recompose without it and report any errors."""
-    dryRun: Boolean! = false
-  ): SubgraphRemovalResult!
-  """
-  Checks a proposed subgraph schema change against a published subgraph.
-  If the proposal composes successfully, perform a usage check for the resulting supergraph schema.
-  """
-  checkPartialSchema(
-    """The name of the graph variant to run the check against."""
-    graphVariant: String!
-    """Name of the implementing service to validate the partial schema against"""
-    implementingServiceName: String!
-    """The partial schema to validate against an implementing service"""
-    partialSchema: PartialSchemaInput!
-    gitContext: GitContextInput
-    historicParameters: HistoricQueryParameters
-    """Deprecated and ignored."""
-    frontend: String
-    """
-    Whether to use the maximum retention for historical validation. This only takes
-    effect if historicParameters is null.
-    """
-    useMaximumRetention: Boolean
-    isSandboxCheck: Boolean! = false
-    """If this check is triggered for an sdl fetched using introspection, this is the endpoint where that schema was being served."""
-    introspectionEndpoint: String
-  ): CheckPartialSchemaResult!
-}
-
-"""Individual permissions for the current user when interacting with a particular Studio graph."""
-type GraphRoles {
-  """Whether the currently authenticated user is permitted to perform schema checks (i.e., run `rover (sub)graph check`)."""
-  canCheckSchemas: Boolean!
-  """Whether the currently authenticated user is permitted to create new graph variants."""
-  canCreateVariants: Boolean!
-  """Whether the currently authenticated user is permitted to delete the graph in question"""
-  canDelete: Boolean!
-  """Whether the currently authenticated user is permitted to manage user access to the graph in question."""
-  canManageAccess: Boolean!
-  """Whether the currently authenticated user is permitted to manage the build configuration (e.g., build pipeline version)."""
-  canManageBuildConfig: Boolean!
-  """Whether the currently authenticated user is permitted to manage third-party integrations (e.g., Datadog forwarding)."""
-  canManageIntegrations: Boolean!
-  """Whether the currently authenticated user is permitted to manage graph-level API keys."""
-  canManageKeys: Boolean!
-  """Whether the currently authenticated user is permitted to perform basic administration of variants (e.g., make a variant public)."""
-  canManageVariants: Boolean!
-  """Whether the currently authenticated user is permitted to view details about the build configuration (e.g. build pipeline version)."""
-  canQueryBuildConfig: Boolean!
-  """Whether the currently authenticated user is permitted to view details of the check configuration for this graph."""
-  canQueryCheckConfiguration: Boolean!
-  """Whether the currently authenticated user is permitted to view which subgraphs the graph is composed of."""
-  canQueryImplementingServices: Boolean!
-  """Whether the currently authenticated user is permitted to download schemas owned by this graph."""
-  canQuerySchemas: Boolean!
-  """Whether the currently authenticated user is permitted to register operations (i.e. `apollo client:push`) for this graph."""
-  canRegisterOperations: Boolean!
-  """Whether the currently authenticated user is permitted to make updates to the check configuration for this graph."""
-  canWriteCheckConfiguration: Boolean!
-}
-
-"""A SHA-256 hash, represented as a lowercase hexadecimal string."""
-scalar SHA256
-
-"""A location in a source code file."""
-type SourceLocation {
-  """Column number."""
-  column: Int!
-  """Line number."""
-  line: Int!
-}
-
-enum Status {
-  STABLE
-  NEXT
-  DEPRECATED
-}
-
-"""A subgraph in a federated Studio supergraph."""
-type Subgraph {
-  """The subgraph schema document's SHA256 hash, represented as a hexadecimal string."""
-  hash: String!
-  """The subgraph's registered name."""
-  name: String!
-  """The number of fields in this subgraph"""
-  numberOfFields: Int
-  """The number of types in this subgraph"""
-  numberOfTypes: Int
-  """The subgraph's routing URL, provided to gateways that use managed federation."""
-  routingURL: String!
-  """Timestamp of when the subgraph was published."""
-  updatedAt: Timestamp
-}
-
-"""A change made to a subgraph as part of a launch."""
-type SubgraphChange {
-  """The subgraph's name."""
-  name: ID!
-  """The type of change that was made."""
-  type: SubgraphChangeType!
-}
-
-enum SubgraphChangeType {
-  ADDITION
-  DELETION
-  MODIFICATION
-}
-
-"""Input type to provide when running schema checks asynchronously for a federated supergraph."""
-input SubgraphCheckAsyncInput {
-  """Configuration options for the check execution."""
-  config: HistoricQueryParametersInput!
-  """The GitHub context to associate with the check."""
-  gitContext: GitContextInput!
-  """The graph ref of the Studio graph and variant to run checks against (such as `my-graph@current`)."""
-  graphRef: ID
-  """The URL of the GraphQL endpoint that Apollo Sandbox introspected to obtain the proposed schema. Required if `isSandbox` is `true`."""
-  introspectionEndpoint: String
-  """If `true`, the check was initiated by Apollo Sandbox."""
-  isSandbox: Boolean!
-  """The proposed subgraph schema to perform checks with."""
-  proposedSchema: GraphQLDocument!
-  """The name of the subgraph to check schema changes for."""
-  subgraphName: String!
-}
-
-"""ISO 8601, extended format with nanoseconds, Zulu (or "[+-]seconds" as a string or number relative to now)"""
-scalar Timestamp
-
-"""Counts of changes."""
-type TotalChangeSummaryCounts {
-  """
-  Number of changes that are additions. This includes adding types, adding fields to object, input
-  object, and interface types, adding values to enums, adding members to interfaces and unions, and
-  adding arguments.
-  """
-  additions: Int!
-  """
-  Number of changes that are removals. This includes removing types, removing fields from object,
-  input object, and interface types, removing values from enums, removing members from interfaces
-  and unions, and removing arguments. This also includes removing @deprecated usages.
-  """
-  removals: Int!
-  """
-  Number of changes that are edits. This includes types changing kind, fields and arguments
-  changing type, arguments changing default value, and any description changes. This also includes
-  edits to @deprecated reason strings.
-  """
-  edits: Int!
-  """Number of changes that are new usages of the @deprecated directive."""
-  deprecations: Int!
-}
-
-"""Counts of changes at the type level, including interfaces, unions, enums, scalars, input objects, etc."""
-type TypeChangeSummaryCounts {
-  """Number of changes that are additions of types."""
-  additions: Int!
-  """Number of changes that are removals of types."""
-  removals: Int!
-  """
-  Number of changes that are edits. This includes types changing kind and any type description
-  changes, but also includes adding/removing values from enums, adding/removing members from
-  interfaces and unions, and any enum value deprecation and description changes.
-  """
-  edits: Int!
-}
-
-union UpdateOperationCollectionEntryResult = OperationCollectionEntry | PermissionError | ValidationError
-
-union UpdateOperationCollectionResult = OperationCollection | PermissionError | ValidationError
-
-"""Describes the result of publishing a schema to a graph variant."""
-type SchemaPublicationResult {
-  """A machine-readable response code that indicates the type of result (e.g., `UPLOAD_SUCCESS` or `NO_CHANGES`)"""
-  code: String!
-  """Whether the schema publish operation succeeded (`true`) or encountered errors (`false`)."""
-  success: Boolean!
-  """A Human-readable message describing the type of result."""
-  message: String!
-  """If the publish operation succeeded, this contains its details. Otherwise, this is null."""
-  publication: SchemaPublication
-}
-
-"""A registered Apollo Studio user."""
-type User implements Identity {
-  """Returns a list of all active user API keys for the user."""
-  apiKeys(includeCookies: Boolean = false): [UserApiKey!]!
-  """Returns a representation of this user as an `Actor` type. Useful when determining which actor (usually a `User` or `Graph`) performed a particular action in Studio."""
-  asActor: Actor!
-  """The user's unique ID."""
-  id: ID!
-  """A list of the user's memberships in Apollo Studio organizations."""
-  memberships: [UserMembership!]!
-  """The user's first and last name."""
-  name: String!
-}
-
-"""
-Represents a user API key, which has permissions identical to
-its associated Apollo user.
-"""
-type UserApiKey implements ApiKey {
-  """The API key's ID."""
-  id: ID!
-  """The API key's name, for distinguishing it from other keys."""
-  keyName: String
-  """The value of the API key. **This is a secret credential!**"""
-  token: String!
-}
-
-"""A single user's membership in a single Apollo Studio organization."""
-type UserMembership {
-  """The organization that the user belongs to."""
-  account: Organization!
-  """The timestamp when the user was added to the organization."""
-  createdAt: Timestamp!
-  """The user's permission level within the organization."""
-  permission: UserPermission!
-  """The user that belongs to the organization."""
-  user: User!
-}
-
-type UserMutation {
-  """Creates a new user API key for this user."""
-  newKey(keyName: String!): UserApiKey!
-  """
-  If this user has no active user API keys, this creates one for the user.
-
-  If this user has at least one active user API key, this returns one of those keys at random and does _not_ create a new key.
-  """
-  provisionKey(keyName: String! = "add-a-name"): ApiKeyProvision
-  """Deletes the user API key with the provided ID, if any."""
-  removeKey(
-    """API key ID"""
-    id: ID!
-  ): Void
-  """Sets a new name for the user API key with the provided ID, if any. This does not invalidate the key or change its value."""
-  renameKey(id: ID!, newKeyName: String): UserApiKey
-}
-
-enum UserPermission {
-  BILLING_MANAGER
-  CONSUMER
-  CONTRIBUTOR
-  DOCUMENTER
-  GRAPH_ADMIN
-  LEGACY_GRAPH_KEY
-  OBSERVER
-  ORG_ADMIN
-}
-
-"""An error that occurs when an operation contains invalid user input."""
-type ValidationError implements Error {
-  """The error's details."""
-  message: String!
-}
-
-"""Always null"""
-scalar Void
diff --git a/pkgs/development/tools/rover/update.sh b/pkgs/development/tools/rover/update.sh
index fbf6fba989c4..3914c9acb540 100755
--- a/pkgs/development/tools/rover/update.sh
+++ b/pkgs/development/tools/rover/update.sh
@@ -49,27 +49,3 @@ cargoSha256=$(
 sed --in-place \
     "s|cargoSha256 = \".*\"|cargoSha256 = \"$cargoSha256\"|" \
     "$dirname/default.nix"
-
-# Update apollo api schema info
-response="$(mktemp)"
-schemaUrl=https://graphql.api.apollographql.com/api/schema
-
-mkdir -p "$dirname"/schema
-
-# Fetch schema info
-echo "Fetching Apollo GraphQL schema"
-# include response headers, and append terminating newline to response body
-curl --include --write-out "\n" "$schemaUrl" > "$response"
-
-# Parse response headers and write the etag to schema/etag.id
-grep \
-    --max-count=1 \
-    --only-matching \
-    --perl-regexp \
-    '^etag: \K\S*' \
-    "$response" \
-    > "$dirname"/schema/etag.id
-
-# Discard headers and blank line (terminated by carriage return), and write the
-# response body to schema/schema.graphql
-sed '1,/^\r/d' "$response" > "$dirname"/schema/schema.graphql
diff --git a/pkgs/development/tools/rust/cargo-binstall/default.nix b/pkgs/development/tools/rust/cargo-binstall/default.nix
index 1e404f10eedb..bbc02e127761 100644
--- a/pkgs/development/tools/rust/cargo-binstall/default.nix
+++ b/pkgs/development/tools/rust/cargo-binstall/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-binstall";
-  version = "1.5.0";
+  version = "1.6.1";
 
   src = fetchFromGitHub {
     owner = "cargo-bins";
     repo = "cargo-binstall";
     rev = "v${version}";
-    hash = "sha256-QPUZnqELncUCfm995NN0hYDGFZcKrYXskZIaN2ZRtzk=";
+    hash = "sha256-KfzINyLxX07CDCP5wkBwl8bAf4x9AVTl6NiGjGZ7nFg=";
   };
 
-  cargoHash = "sha256-85r0jDBuvfrJq776MSbQT6w60/xWQkC9zLmZwjdanCk=";
+  cargoHash = "sha256-8Fwgs+pP2p5IqLXnFrPT+oOCRjyMIhQa+f63LA4aUOw=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix b/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix
index 963c2d4b2a6e..da57b85e083e 100644
--- a/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix
+++ b/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix
@@ -12,13 +12,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-bisect-rustc";
-  version = "0.6.7";
+  version = "0.6.8";
 
   src = fetchFromGitHub {
     owner = "rust-lang";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-1edBGjnVsMNoP06HAEERQJ6HCkk0dRKlnt1b8GnJWsY=";
+    hash = "sha256-7HiM1oRuLSfRaum66duag/w8ncFdxRLF0yeSGlIey0Y=";
   };
 
   patches =
@@ -47,7 +47,7 @@ rustPlatform.buildRustPackage rec {
     Security
   ];
 
-  cargoHash = "sha256-HzqGSuobGuIuLwoAPQJ1d6xUO2VJ0rcjfOYz2wdIbCk=";
+  cargoHash = "sha256-CgEs0cejquFRY3VN6CgbE23Gipg+LEuWp/jSIkITrjw=";
 
   checkFlags = [
     "--skip test_github"  # requires internet
diff --git a/pkgs/development/tools/rust/cargo-component/default.nix b/pkgs/development/tools/rust/cargo-component/default.nix
index e55599ff9978..3543f5d10fb4 100644
--- a/pkgs/development/tools/rust/cargo-component/default.nix
+++ b/pkgs/development/tools/rust/cargo-component/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-component";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "bytecodealliance";
     repo = "cargo-component";
     rev = "v${version}";
-    hash = "sha256-x5srXt9xTBkBNfG9r7GsDKVSbxJCKU3Y6HoBLvAHyi0=";
+    hash = "sha256-xOHu7sm06Phe2hc2oev1Am2VlhiSBaeH52aSiFBxuqw=";
   };
 
-  cargoHash = "sha256-/ZzcsC89U+SfyZaANX1rbytVlQ88p4g+HKRd6JerpQc=";
+  cargoHash = "sha256-5xencr+HxUBvCwn8rZr1tONUs6S24swE2hlT8jx8t/k=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/development/tools/rust/cargo-dist/default.nix b/pkgs/development/tools/rust/cargo-dist/default.nix
index 3d6300132c3b..5063a4baf40f 100644
--- a/pkgs/development/tools/rust/cargo-dist/default.nix
+++ b/pkgs/development/tools/rust/cargo-dist/default.nix
@@ -14,16 +14,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-dist";
-  version = "0.8.0";
+  version = "0.8.2";
 
   src = fetchFromGitHub {
     owner = "axodotdev";
     repo = "cargo-dist";
     rev = "v${version}";
-    hash = "sha256-AyxC1YS1VvCBIS6lKDtT2zX3bhorF4G+qg+brm4tJm8=";
+    hash = "sha256-Y4jXAZgJj0d1fUFuM94umlj/JsawWs3KxEQAucsT24s=";
   };
 
-  cargoHash = "sha256-kStLY/Hjj0DeisjXzw2BbmJalNljUP0ogBEXcoDX3FE=";
+  cargoHash = "sha256-Jza9U5vL45rvDPLb4/iELneKgy1OTCMBM1JxfuxZigQ=";
 
   nativeBuildInputs = [
     pkg-config
@@ -46,10 +46,9 @@ rustPlatform.buildRustPackage rec {
     ZSTD_SYS_USE_PKG_CONFIG = true;
   };
 
-  # remove tests that require internet access and a git repo
+  # remove tests that require internet access
   postPatch = ''
     rm cargo-dist/tests/integration-tests.rs
-    rm cargo-dist/tests/cli-tests.rs
   '';
 
   passthru.updateScript = nix-update-script { };
diff --git a/pkgs/development/tools/rust/cargo-license/default.nix b/pkgs/development/tools/rust/cargo-license/default.nix
index c6bb649866b8..27798f4ca85e 100644
--- a/pkgs/development/tools/rust/cargo-license/default.nix
+++ b/pkgs/development/tools/rust/cargo-license/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-license";
-  version = "0.6.0";
+  version = "0.6.1";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-hBlyRk23gRfKdYuVnrFoDE883S32X9DFvTIsR2zfJck=";
+    sha256 = "sha256-qwyWj0vPWQOZYib2ZZutX25a4wwnG1kFAiRCWqGyVms=";
   };
 
-  cargoHash = "sha256-4P2kR+Jxki62IdUKpMNL7hzBQWci2tKWrQXV5rkMXkw=";
+  cargoHash = "sha256-ifw/n7eejUWUqhieDLojuO3xgosn28NnjAKkq/ZSLEI=";
 
   meta = with lib; {
     description = "Cargo subcommand to see license of dependencies";
diff --git a/pkgs/development/tools/rust/cargo-make/default.nix b/pkgs/development/tools/rust/cargo-make/default.nix
index 0c35fb9ccb6b..f3bd8a89c99b 100644
--- a/pkgs/development/tools/rust/cargo-make/default.nix
+++ b/pkgs/development/tools/rust/cargo-make/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-make";
-  version = "0.37.7";
+  version = "0.37.8";
 
   src = fetchFromGitHub {
     owner = "sagiegurari";
     repo = "cargo-make";
     rev = version;
-    hash = "sha256-1WITPilqdJeOPWleEGP4ApHE0pIOQZabeY8x2joq6N4=";
+    hash = "sha256-hjrR5hCyR+s1/d9LvxRfklmLhReAU98NsEjyRrjD8sI=";
   };
 
-  cargoHash = "sha256-kT7IbknQ/TF4l/X7GIpX1btHCp10Z15GHd6GjPMCpJs=";
+  cargoHash = "sha256-KaBpq9ykTvSdGpziV15V7S5zMsEyVHJdLLMZydNYyF8=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/tools/rust/cargo-zigbuild/default.nix b/pkgs/development/tools/rust/cargo-zigbuild/default.nix
index 7173fbd5b9ac..adc845c67ea7 100644
--- a/pkgs/development/tools/rust/cargo-zigbuild/default.nix
+++ b/pkgs/development/tools/rust/cargo-zigbuild/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-zigbuild";
-  version = "0.18.2";
+  version = "0.18.3";
 
   src = fetchFromGitHub {
     owner = "messense";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-qPoPDUx88fBRkxcwirIgGO9wivB/e7B7Yy55JOICvdM=";
+    hash = "sha256-wL6Rmw5hJI8cJDw2WO9CDOyeOuZv6QoFxrn81JrYBR4=";
   };
 
-  cargoHash = "sha256-011FySv7BbfTB1uHWh916MvK1gXqbu8Bp38aEkUytqs=";
+  cargoHash = "sha256-uCZYDh4+Pri77DzqZj12cav7o8eDY2+fgwIwVBdcbHg=";
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/development/tools/rust/rust-analyzer/default.nix b/pkgs/development/tools/rust/rust-analyzer/default.nix
index 7623eeef02f8..a1c8dd591e10 100644
--- a/pkgs/development/tools/rust/rust-analyzer/default.nix
+++ b/pkgs/development/tools/rust/rust-analyzer/default.nix
@@ -13,14 +13,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-analyzer-unwrapped";
-  version = "2024-01-22";
-  cargoSha256 = "sha256-QH6iAZnkLGOGTrzkpj83Uib7TcO9xdnMWog4wWUEKRY=";
+  version = "2024-01-29";
+  cargoSha256 = "sha256-3f+Nc2HXCQsaZ+FFSH7ML0o1yikZWhsRZmA8JtBc2TY=";
 
   src = fetchFromGitHub {
     owner = "rust-lang";
     repo = "rust-analyzer";
     rev = version;
-    sha256 = "sha256-ZATChFWHToTZQFLlzrzDUX8fjEbMHHBIyPaZU1JGmjI=";
+    sha256 = "sha256-6K5rK1b2APQfXOrC+Hm+0QcyfPVt+TV81Q6Fd/QjMlQ=";
   };
 
   cargoBuildFlags = [ "--bin" "rust-analyzer" "--bin" "rust-analyzer-proc-macro-srv" ];
diff --git a/pkgs/development/tools/sentry-cli/default.nix b/pkgs/development/tools/sentry-cli/default.nix
index 8c62e2f90d60..789b02112a4e 100644
--- a/pkgs/development/tools/sentry-cli/default.nix
+++ b/pkgs/development/tools/sentry-cli/default.nix
@@ -10,13 +10,13 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "sentry-cli";
-  version = "2.26.0";
+  version = "2.27.0";
 
   src = fetchFromGitHub {
     owner = "getsentry";
     repo = "sentry-cli";
     rev = version;
-    sha256 = "sha256-9Qwonp2tGmaffYj5Vv09+Z3YcbFSFmeS/zc7PXjmrk4=";
+    sha256 = "sha256-dhIja1f+57QdgE0uYBNbgSsmFNE7h0GdcyBx4Z8bGpA=";
   };
   doCheck = false;
 
@@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ CoreServices Security SystemConfiguration ];
   nativeBuildInputs = [ pkg-config ];
 
-  cargoHash = "sha256-t1Gqis4Gd6Zdkka8u/tCRM5xmm3z85OqZIkINm9jNyc=";
+  cargoHash = "sha256-zLTdpbBy+41tVEItSjkHCu+D3YKiBJqlpAPMpUt5+VM=";
 
   meta = with lib; {
     homepage = "https://docs.sentry.io/cli/";
diff --git a/pkgs/development/tools/skopeo/default.nix b/pkgs/development/tools/skopeo/default.nix
index cb7d184329cf..7afeb6313946 100644
--- a/pkgs/development/tools/skopeo/default.nix
+++ b/pkgs/development/tools/skopeo/default.nix
@@ -18,13 +18,13 @@
 
 buildGoModule rec {
   pname = "skopeo";
-  version = "1.14.1";
+  version = "1.14.2";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "containers";
     repo = "skopeo";
-    hash = "sha256-PYPlhlliqd6j3KbMgelg+spqXOl1ZnA0qd1Xyf8F4wY=";
+    hash = "sha256-js1Y7EGXinzOMMX9LjsG6D57UhGtZcvesOw/JDEKvoU=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/development/tools/snazy/default.nix b/pkgs/development/tools/snazy/default.nix
index eed8301f3526..7abe2fd98cfc 100644
--- a/pkgs/development/tools/snazy/default.nix
+++ b/pkgs/development/tools/snazy/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "snazy";
-  version = "0.52.7";
+  version = "0.52.17";
 
   src = fetchFromGitHub {
     owner = "chmouel";
     repo = pname;
     rev = version;
-    hash = "sha256-NUDKTJtSzzY+kaqreHroJDW18lta9AcnL94t/jdEOlY=";
+    hash = "sha256-0r5xhmU9a9I+q24mjJ+C4EKK1Nw/67YThuBFibAx3Dw=";
   };
 
-  cargoHash = "sha256-raDkfP7EeyXbMr2puR+dHUKVqguVvkV7noNuLw/KttI=";
+  cargoHash = "sha256-ljYsF5lBRqiTqx9nta5h/75052GWOBJ9uJnqZkWJvwI=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/tools/sqlboiler/default.nix b/pkgs/development/tools/sqlboiler/default.nix
index 432582dbc46e..eccb479aa5a4 100644
--- a/pkgs/development/tools/sqlboiler/default.nix
+++ b/pkgs/development/tools/sqlboiler/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "sqlboiler";
-  version = "4.15.0";
+  version = "4.16.1";
 
   src = fetchFromGitHub {
     owner = "volatiletech";
     repo = "sqlboiler";
     rev = "refs/tags/v${version}";
-    hash = "sha256-MT1tjVCDaFB9HfjlGGnf6jTiPdKcrDamgp2nTpIarqY=";
+    hash = "sha256-MmZ2TZZ06eiz05bkEm6E8tmGRVkInBZJGHbuPN4fMMY=";
   };
 
-  vendorHash = "sha256-tZ1RQGmeDv4rtdF1WTRQV1K4Xy1AgIatLPPexnHJnkA=";
+  vendorHash = "sha256-BTrQPWThfJ7gWXi/Y1l/s2BmkW5lVYS/PP0WRwntQxA=";
 
   tags = [
     "mysql"
diff --git a/pkgs/development/tools/supabase-cli/default.nix b/pkgs/development/tools/supabase-cli/default.nix
index 6142ff4c170e..ed4cb8b8fe5d 100644
--- a/pkgs/development/tools/supabase-cli/default.nix
+++ b/pkgs/development/tools/supabase-cli/default.nix
@@ -9,16 +9,16 @@
 
 buildGoModule rec {
   pname = "supabase-cli";
-  version = "1.137.2";
+  version = "1.141.0";
 
   src = fetchFromGitHub {
     owner = "supabase";
     repo = "cli";
     rev = "v${version}";
-    hash = "sha256-C7J1hXRsWlzVvvKjj0IlgWC/BtVsJOvFnPm7c+ioxCA=";
+    hash = "sha256-LyArcez2x2aGb8rH9IQX7E8HMyhpfjzBlwdLs15lKD8=";
   };
 
-  vendorHash = "sha256-p026yk50DfzUZX7TTFpDhvGHiD/XUhbxlHQz383pRZk=";
+  vendorHash = "sha256-WKfR1HzgghuOF4brNiAAfOul0q4reg3YRxI3AzyOdFM=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/development/tools/symfony-cli/default.nix b/pkgs/development/tools/symfony-cli/default.nix
index 75379b5e8203..453b96242638 100644
--- a/pkgs/development/tools/symfony-cli/default.nix
+++ b/pkgs/development/tools/symfony-cli/default.nix
@@ -10,14 +10,14 @@
 
 buildGoModule rec {
   pname = "symfony-cli";
-  version = "5.8.4";
+  version = "5.8.6";
   vendorHash = "sha256-ACK0JCaS1MOCgUi2DMEjIcKf/nMCcrdDyIdioBZv7qw=";
 
   src = fetchFromGitHub {
     owner = "symfony-cli";
     repo = "symfony-cli";
     rev = "v${version}";
-    hash = "sha256-b6vjJaRSi5qNl4qpOEndqdZkaWxeI/6GnBiBIM2Vwr8=";
+    hash = "sha256-lZ4jPmqPGyWp8xS156XXl6s4ZfNbU4M5xJy25nRL1Bs=";
   };
 
   ldflags = [
diff --git a/pkgs/development/tools/the-way/default.nix b/pkgs/development/tools/the-way/default.nix
index a161728657ac..9418afb6cfa6 100644
--- a/pkgs/development/tools/the-way/default.nix
+++ b/pkgs/development/tools/the-way/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "the-way";
-  version = "0.20.2";
+  version = "0.20.3";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-jUo46NHjgSFOV7fsqh9Ki0QtTGfoaPjQ87/a66zBz1Q=";
+    sha256 = "sha256-/vG5LkQiA8iPP+UV1opLeJwbYfmzqYwpsoMizpGT98o=";
   };
 
-  cargoHash = "sha256-nmVsg8LX3di7ZAvvDuPQ3PXlLjs+L6YFTzwXRAkcxig=";
+  cargoHash = "sha256-iZxV099582LuZ8A3uOsKPyekAQG2cQusLZhW+W1wW/8=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/tools/turso-cli/default.nix b/pkgs/development/tools/turso-cli/default.nix
index 4c9da1e13f14..09f96c2d183a 100644
--- a/pkgs/development/tools/turso-cli/default.nix
+++ b/pkgs/development/tools/turso-cli/default.nix
@@ -8,13 +8,13 @@
 }:
 buildGoModule rec {
   pname = "turso-cli";
-  version = "0.88.2";
+  version = "0.88.3";
 
   src = fetchFromGitHub {
     owner = "tursodatabase";
     repo = "turso-cli";
     rev = "v${version}";
-    hash = "sha256-9lnqjkDGQRu487Me895h/dyWDIVImQkU9bEiafjTbb8=";
+    hash = "sha256-tPeoLGYJRMXFVI09fupspdQMSMjF2Trdo2GlkoWs7wA=";
   };
 
   vendorHash = "sha256-rTeW2RQhcdwJTAMQELm4cdObJbm8gk/I2Qz3Wk3+zpI=";
diff --git a/pkgs/development/tools/twilio-cli/default.nix b/pkgs/development/tools/twilio-cli/default.nix
index c7711151863e..36d2f2dccc67 100644
--- a/pkgs/development/tools/twilio-cli/default.nix
+++ b/pkgs/development/tools/twilio-cli/default.nix
@@ -2,11 +2,11 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "twilio-cli";
-  version = "5.17.0";
+  version = "5.17.1";
 
   src = fetchzip {
     url = "https://twilio-cli-prod.s3.amazonaws.com/twilio-v${finalAttrs.version}/twilio-v${finalAttrs.version}.tar.gz";
-    hash = "sha256-7BJ/9dqEKBjH89XDyIonRbfCn8cyjvgtV2PwdzGIUro=";
+    hash = "sha256-wgZdivfFjkX3bMmBLWY5vy32pXE7CqEkRGQqIhJrcdE=";
   };
 
   buildInputs = [ nodejs-slim ];
diff --git a/pkgs/development/tools/uftrace/default.nix b/pkgs/development/tools/uftrace/default.nix
index 0ccc51c50579..26bb1cf60e00 100644
--- a/pkgs/development/tools/uftrace/default.nix
+++ b/pkgs/development/tools/uftrace/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "uftrace";
-  version = "0.15.1";
+  version = "0.15.2";
 
   src = fetchFromGitHub {
     owner = "namhyung";
     repo = "uftrace";
     rev = "v${version}";
-    sha256 = "sha256-5P8CshSCK1Ugkg9+MJB8G31n4iyhZF0oVayouQU0CaA=";
+    sha256 = "sha256-FfTt1S7X7FakKXWbmJJ1HMYcu/tG/UFknz8XmEPbPUo=";
   };
 
   postUnpack = ''
diff --git a/pkgs/development/tools/vultr-cli/default.nix b/pkgs/development/tools/vultr-cli/default.nix
index 0cd9c6acd05f..e3be6f0366fd 100644
--- a/pkgs/development/tools/vultr-cli/default.nix
+++ b/pkgs/development/tools/vultr-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "vultr-cli";
-  version = "2.21.0";
+  version = "2.22.0";
 
   src = fetchFromGitHub {
     owner = "vultr";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-sIxAl4mI29RfJbGk/pvCSxUva8O9sXcwEIWBfY+h72Q=";
+    hash = "sha256-DdiMrmvLa2ZaZen//+Qz4UxZwvn8DNgH9mYp/Q8Z4Uw=";
   };
 
-  vendorHash = "sha256-d4EK9SLmIyt/N+29a7p7nxHkX0m0pAOMH7+G1tLbJGk=";
+  vendorHash = "sha256-3sXqpeOZSiysZYOv15c+ZkMZOwqy3UCkvBEB1szaWFA=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/tools/yj/default.nix b/pkgs/development/tools/yj/default.nix
deleted file mode 100644
index 150278c0ac4d..000000000000
--- a/pkgs/development/tools/yj/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib, buildGoModule, fetchFromGitHub }:
-
-buildGoModule rec {
-  pname = "yj";
-  version = "5.1.0";
-
-  src = fetchFromGitHub {
-    owner = "sclevine";
-    repo = "yj";
-    rev = "v${version}";
-    hash = "sha256-lsn5lxtix5W7po6nzvGcHmifbyhrtHgvaKYT7RPPCOg=";
-  };
-
-  vendorHash = "sha256-NeSOoL9wtFzq6ba8ghseB6D+Qq8Z5holQExcAUbtYrs=";
-
-  ldflags = [ "-s" "-w" "-X main.Version=${version}" ];
-
-  meta = with lib; {
-    description = "Convert YAML <=> TOML <=> JSON <=> HCL";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ Profpatsch ];
-    homepage = "https://github.com/sclevine/yj";
-  };
-}
diff --git a/pkgs/development/tools/zed/default.nix b/pkgs/development/tools/zed/default.nix
index 68a84d53a502..6164b6d4c624 100644
--- a/pkgs/development/tools/zed/default.nix
+++ b/pkgs/development/tools/zed/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "zed";
-  version = "1.12.0";
+  version = "1.13.0";
 
   src = fetchFromGitHub {
     owner = "brimdata";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-mBJmAV7ax4F61gP8yeiJj/EQyJi3zaex6jT/CKzR3LU=";
+    sha256 = "sha256-xyTHCBvklK8x6V7WsWDYytnVEfLcja78crvs62WJJ9o=";
   };
 
-  vendorHash = "sha256-BWvMy1dc3PzAc3kDTXtI6Y8kjRGLWR+aUleItg5EgRU=";
+  vendorHash = "sha256-m8GOKBwXlNhjEIkkbaIOAGslX4WRVPZ0OknGEG29b4E=";
 
   subPackages = [ "cmd/zed" "cmd/zq" ];
 
diff --git a/pkgs/development/web/deno/default.nix b/pkgs/development/web/deno/default.nix
index acc2a8c5c2dc..bae30f873a0f 100644
--- a/pkgs/development/web/deno/default.nix
+++ b/pkgs/development/web/deno/default.nix
@@ -13,16 +13,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "deno";
-  version = "1.39.2";
+  version = "1.40.2";
 
   src = fetchFromGitHub {
     owner = "denoland";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-R5LF3PwH8LZeBM7biR+QLo5+MJ9KvM41fk5IHR7oAOs=";
+    hash = "sha256-ycQN4BKuvK4FRYbHUKFFMVFg0LAG64xFiXbAkmQ46Cs=";
   };
 
-  cargoHash = "sha256-OPHQltS+3GZTIhMSg6ldLWy6L5skYzZxJLM06rLiDzs=";
+  cargoHash = "sha256-5OnYtVsuf6q4nQGO1+qL+2WFaKW0k13fNFS29gKaWhk=";
 
   postPatch = ''
     # upstream uses lld on aarch64-darwin for faster builds
diff --git a/pkgs/development/web/deno/librusty_v8.nix b/pkgs/development/web/deno/librusty_v8.nix
index 726a04dea474..60ce4616c014 100644
--- a/pkgs/development/web/deno/librusty_v8.nix
+++ b/pkgs/development/web/deno/librusty_v8.nix
@@ -10,11 +10,11 @@ let
   };
 in
 fetch_librusty_v8 {
-  version = "0.82.0";
+  version = "0.83.1";
   shas = {
-    x86_64-linux = "sha256-2nWOAUuzc7tr0KieeugIqI3zaRruvnLWBPn+ZdHTXsM=";
-    aarch64-linux = "sha256-vlc60ZoFtT2Ugp0npT0dep6WWnEBAznR7dYFRaMNAKM=";
-    x86_64-darwin = "sha256-CqyG/JOJe5kWzFJnnkU2Lz4VS/unWe1iucFxm+1HGsU=";
-    aarch64-darwin = "sha256-ps19JZqCpO3pEAMQZOO+l/Iz7u0dIXLnpYIsnOyAxYk=";
+    x86_64-linux = "sha256-0cCpFMPpFWTvoU3+HThYDDTQO7DdpdVDDer5k+3HQFY=";
+    aarch64-linux = "sha256-fOyJiD0raHxl+5tDWSpH/MbdBUqNY+HCKmTulYLXEYI=";
+    x86_64-darwin = "sha256-JwZ1FrU/MZeEnvSPDojvDdDxIF/bdZBPRCXrjbBb7WM=";
+    aarch64-darwin = "sha256-ajmr+SGj3L8TT+17NPkNcwQFESpIZuUul12Pp1oJAkY=";
   };
 }
diff --git a/pkgs/development/web/flyctl/default.nix b/pkgs/development/web/flyctl/default.nix
index 9c6dfda5d877..c96cbe6cfb97 100644
--- a/pkgs/development/web/flyctl/default.nix
+++ b/pkgs/development/web/flyctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "flyctl";
-  version = "0.1.143";
+  version = "0.1.146";
 
   src = fetchFromGitHub {
     owner = "superfly";
     repo = "flyctl";
     rev = "v${version}";
-    hash = "sha256-8Gzsod44hPSkBru8MNOYXvN4lvZei/j40syOSeauCW0=";
+    hash = "sha256-FXEYZEMwUsDWoN+MHjg6Au0rgZTE4N0ViktmEi2nH7c=";
   };
 
-  vendorHash = "sha256-auWVWFqPqv3Tia3gEkJ2A6eHNS0lJzaMV+kvzB8HiY8=";
+  vendorHash = "sha256-hfNrhaRZoRdbvh/MnwKWFbepGkCuCsbcW88tWSPwCO0=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/development/web/function-runner/default.nix b/pkgs/development/web/function-runner/default.nix
index 7582800e25bd..a3526a0c5584 100644
--- a/pkgs/development/web/function-runner/default.nix
+++ b/pkgs/development/web/function-runner/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "function-runner";
-  version = "4.1.0";
+  version = "4.2.0";
 
   src = fetchFromGitHub {
     owner = "Shopify";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-o+fsIBH/vONlb57m3+upKG2Gss6s7yBNATkbKtSHf/0=";
+    sha256 = "sha256-33UVo7mPD/o3Z/R5PFhosiSLFLLpJ0pHqUbKtX6THJE=";
   };
 
-  cargoHash = "sha256-7ACi4orqpmWiaMYmOjICR6/d1kVySzaaCWIoUxqnhpI=";
+  cargoHash = "sha256-TNbGmqITCk1VKVuO46LxO+zjAG7Laguq7EAruuhJIxk=";
 
   meta = with lib; {
     description = "A CLI tool which allows you to run Wasm Functions intended for the Shopify Functions infrastructure";
diff --git a/pkgs/development/web/grails/default.nix b/pkgs/development/web/grails/default.nix
index 9990cf4553a4..95660e2f3d60 100644
--- a/pkgs/development/web/grails/default.nix
+++ b/pkgs/development/web/grails/default.nix
@@ -11,11 +11,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "grails";
-  version = "6.1.0";
+  version = "6.1.2";
 
   src = fetchurl {
     url = "https://github.com/grails/grails-core/releases/download/v${version}/grails-${version}.zip";
-    sha256 = "sha256-v+AAIDWRAgBXmhX2BecEio4s5dVA77K+YycZY1k9uvg=";
+    sha256 = "sha256-PoiXZuAJbKsyBRVaxwsKSDh1BzPYlgAwe/xC0qfeDgs=";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/development/web/minify/default.nix b/pkgs/development/web/minify/default.nix
index f3751517abf9..232f6dffaaa6 100644
--- a/pkgs/development/web/minify/default.nix
+++ b/pkgs/development/web/minify/default.nix
@@ -9,16 +9,16 @@
 
 buildGoModule rec {
   pname = "minify";
-  version = "2.20.15";
+  version = "2.20.16";
 
   src = fetchFromGitHub {
     owner = "tdewolff";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-/CTQ1Ok9ODueM2cDpDTAnpu5vvvYAAVxqhF+Uu487N4=";
+    hash = "sha256-0RiSNRoRmN7X2udwgGaArXgIRTaxaGH4fo3usiCJNbA=";
   };
 
-  vendorHash = "sha256-OrBFQl/IBzMFK3O1C1vsJdRRrq9AP6rs2KUIcyx2IlQ=";
+  vendorHash = "sha256-8OEF2sAJZuGX4z/OsXCAkRR82JO3rYCEJQbidIjGOJ8=";
 
   nativeBuildInputs = [ installShellFiles ];