summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2023-02-08 00:13:23 +0000
committerGitHub <noreply@github.com>2023-02-08 00:13:23 +0000
commitf812f1aa6a68ed81e5ed1f6bbd4c051eb4863859 (patch)
tree132e136e8cbf2072ee0e53916c929dcf1fb06f5a /pkgs/development
parent27f7c8a2423d07476fa316684bfa60f4689e03a7 (diff)
parentc5ce8986dff8e06ace05a0158fe617707228ac25 (diff)
downloadnixpkgs-f812f1aa6a68ed81e5ed1f6bbd4c051eb4863859.tar
nixpkgs-f812f1aa6a68ed81e5ed1f6bbd4c051eb4863859.tar.gz
nixpkgs-f812f1aa6a68ed81e5ed1f6bbd4c051eb4863859.tar.bz2
nixpkgs-f812f1aa6a68ed81e5ed1f6bbd4c051eb4863859.tar.lz
nixpkgs-f812f1aa6a68ed81e5ed1f6bbd4c051eb4863859.tar.xz
nixpkgs-f812f1aa6a68ed81e5ed1f6bbd4c051eb4863859.tar.zst
nixpkgs-f812f1aa6a68ed81e5ed1f6bbd4c051eb4863859.zip
Merge master into haskell-updates
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/haskell-modules/patches/amazonka-Allow-http-client-0.6.patch24
-rw-r--r--pkgs/development/haskell-modules/patches/amazonka-core-Allow-http-client-0.6.patch26
-rw-r--r--pkgs/development/haskell-modules/patches/darcs-2.14.2-Compile-against-GHC-8.8.patch333
-rw-r--r--pkgs/development/haskell-modules/patches/darcs-setup.patch120
-rw-r--r--pkgs/development/haskell-modules/patches/fix-dbus-for-ghc-8.10.x.patch383
-rw-r--r--pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch65
-rw-r--r--pkgs/development/haskell-modules/patches/hunspell.patch30
-rw-r--r--pkgs/development/libraries/aravis/default.nix4
-rw-r--r--pkgs/development/libraries/cairo/default.nix14
-rw-r--r--pkgs/development/libraries/fftw/default.nix19
-rw-r--r--pkgs/development/libraries/intel-media-sdk/default.nix4
-rw-r--r--pkgs/development/libraries/libappindicator/default.nix47
-rw-r--r--pkgs/development/libraries/libdbusmenu/default.nix22
-rw-r--r--pkgs/development/libraries/libdevil/default.nix10
-rw-r--r--pkgs/development/libraries/mesa/stubs.nix12
-rw-r--r--pkgs/development/libraries/ncurses/default.nix16
-rw-r--r--pkgs/development/libraries/nng/default.nix6
-rw-r--r--pkgs/development/libraries/protobuf/generic-v3.nix2
-rw-r--r--pkgs/development/ocaml-modules/caqti/driver-sqlite3.nix2
-rw-r--r--pkgs/development/ocaml-modules/checkseum/default.nix3
-rw-r--r--pkgs/development/ocaml-modules/chrome-trace/default.nix1
-rw-r--r--pkgs/development/ocaml-modules/irmin/chunk.nix1
-rw-r--r--pkgs/development/ocaml-modules/irmin/containers.nix1
-rw-r--r--pkgs/development/ocaml-modules/irmin/default.nix3
-rw-r--r--pkgs/development/ocaml-modules/irmin/fs.nix1
-rw-r--r--pkgs/development/ocaml-modules/irmin/mirage.nix1
-rw-r--r--pkgs/development/ocaml-modules/irmin/pack.nix7
-rw-r--r--pkgs/development/ocaml-modules/irmin/ppx.nix5
-rw-r--r--pkgs/development/ocaml-modules/irmin/test.nix1
-rw-r--r--pkgs/development/ocaml-modules/irmin/tezos.nix1
-rw-r--r--pkgs/development/ocaml-modules/ordering/default.nix1
-rw-r--r--pkgs/development/ocaml-modules/rusage/default.nix20
-rw-r--r--pkgs/development/ocaml-modules/sqlite3/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/xdg/default.nix1
-rw-r--r--pkgs/development/perl-modules/ham/default.nix24
-rw-r--r--pkgs/development/python-modules/aiodocker/default.nix33
-rw-r--r--pkgs/development/python-modules/arcam-fmj/default.nix4
-rw-r--r--pkgs/development/python-modules/bluemaestro-ble/default.nix4
-rw-r--r--pkgs/development/python-modules/bluetooth-sensor-state-data/default.nix4
-rw-r--r--pkgs/development/python-modules/deepdiff/default.nix6
-rw-r--r--pkgs/development/python-modules/desktop-notifier/default.nix4
-rw-r--r--pkgs/development/python-modules/django-rq/default.nix5
-rw-r--r--pkgs/development/python-modules/django_treebeard/default.nix4
-rw-r--r--pkgs/development/python-modules/elementpath/default.nix4
-rw-r--r--pkgs/development/python-modules/goodwe/default.nix4
-rw-r--r--pkgs/development/python-modules/greeclimate/default.nix4
-rw-r--r--pkgs/development/python-modules/lupupy/default.nix4
-rw-r--r--pkgs/development/python-modules/meilisearch/default.nix4
-rw-r--r--pkgs/development/python-modules/ome-zarr/default.nix81
-rw-r--r--pkgs/development/python-modules/oralb-ble/default.nix4
-rw-r--r--pkgs/development/python-modules/pikepdf/default.nix14
-rw-r--r--pkgs/development/python-modules/pydeps/default.nix4
-rw-r--r--pkgs/development/python-modules/pymemcache/default.nix6
-rw-r--r--pkgs/development/python-modules/python-gvm/default.nix4
-rw-r--r--pkgs/development/python-modules/schwifty/default.nix4
-rw-r--r--pkgs/development/python-modules/sensorpro-ble/default.nix4
-rw-r--r--pkgs/development/python-modules/sensorpush-ble/default.nix7
-rw-r--r--pkgs/development/python-modules/sentence-transformers/default.nix53
-rw-r--r--pkgs/development/python-modules/soundfile/default.nix19
-rw-r--r--pkgs/development/python-modules/thermopro-ble/default.nix4
-rw-r--r--pkgs/development/python-modules/tilt-ble/default.nix7
-rw-r--r--pkgs/development/python-modules/types-colorama/default.nix4
-rw-r--r--pkgs/development/python-modules/types-docutils/default.nix4
-rw-r--r--pkgs/development/python-modules/types-requests/default.nix4
-rw-r--r--pkgs/development/python-modules/types-urllib3/default.nix4
-rw-r--r--pkgs/development/python-modules/volvooncall/default.nix5
-rw-r--r--pkgs/development/python-modules/xiaomi-ble/default.nix4
-rw-r--r--pkgs/development/python-modules/xmlschema/default.nix20
-rw-r--r--pkgs/development/r-modules/default.nix36
-rw-r--r--pkgs/development/r-modules/generic-builder.nix4
-rw-r--r--pkgs/development/tools/codeowners/default.nix6
-rw-r--r--pkgs/development/tools/database/pgagroal/default.nix27
-rw-r--r--pkgs/development/tools/database/pgagroal/do-not-search-libatomic.patch15
-rw-r--r--pkgs/development/tools/devbox/default.nix4
-rw-r--r--pkgs/development/tools/language-servers/lua-language-server/default.nix (renamed from pkgs/development/tools/language-servers/sumneko-lua-language-server/default.nix)43
-rw-r--r--pkgs/development/tools/lazygit/default.nix4
-rw-r--r--pkgs/development/tools/misc/sqitch/default.nix4
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix1
-rw-r--r--pkgs/development/tools/pipenv/default.nix4
-rw-r--r--pkgs/development/tools/ruff/default.nix6
-rw-r--r--pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix2
-rw-r--r--pkgs/development/web/deno/default.nix6
82 files changed, 512 insertions, 1206 deletions
diff --git a/pkgs/development/haskell-modules/patches/amazonka-Allow-http-client-0.6.patch b/pkgs/development/haskell-modules/patches/amazonka-Allow-http-client-0.6.patch
deleted file mode 100644
index 9e1eeb75160..00000000000
--- a/pkgs/development/haskell-modules/patches/amazonka-Allow-http-client-0.6.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 657b70d174fe5cb61e56cb8b9c5e57f1ec216f2b Mon Sep 17 00:00:00 2001
-From: Mikhail Glushenkov <mikhail.glushenkov@gmail.com>
-Date: Wed, 10 Apr 2019 17:42:57 +0100
-Subject: [PATCH] Allow http-client 0.6.*.
-
-Changelog doesn't list any silently breaking semantic changes.
----
- amazonka/amazonka.cabal  | 2 +-
- core/amazonka-core.cabal | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/amazonka/amazonka.cabal b/amazonka/amazonka.cabal
-index e86713f11c..81c4cb7e48 100644
---- a/amazonka.cabal
-+++ b/amazonka.cabal
-@@ -67,7 +67,7 @@ library
-         , conduit-extra       >= 1.1
-         , directory           >= 1.2
-         , exceptions          >= 0.6
--        , http-client         >= 0.4 && < 0.6
-+        , http-client         >= 0.4 && < 0.7
-         , http-conduit        >= 2.1.7 && < 3
-         , http-types          >= 0.8
-         , ini                 >= 0.3.5
diff --git a/pkgs/development/haskell-modules/patches/amazonka-core-Allow-http-client-0.6.patch b/pkgs/development/haskell-modules/patches/amazonka-core-Allow-http-client-0.6.patch
deleted file mode 100644
index d99072d79c6..00000000000
--- a/pkgs/development/haskell-modules/patches/amazonka-core-Allow-http-client-0.6.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 657b70d174fe5cb61e56cb8b9c5e57f1ec216f2b Mon Sep 17 00:00:00 2001
-From: Mikhail Glushenkov <mikhail.glushenkov@gmail.com>
-Date: Wed, 10 Apr 2019 17:42:57 +0100
-Subject: [PATCH] Allow http-client 0.6.*.
-
-Changelog doesn't list any silently breaking semantic changes.
----
- amazonka/amazonka.cabal  | 2 +-
- core/amazonka-core.cabal | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/core/amazonka-core.cabal b/core/amazonka-core.cabal
-index 9796e007cf..eccb24e5bd 100644
---- a/amazonka-core.cabal
-+++ b/amazonka-core.cabal
-@@ -90,7 +90,7 @@ library
-         , deepseq              >= 1.4
-         , exceptions           >= 0.6
-         , hashable             >= 1.2
--        , http-client          >= 0.4 && < 0.6
-+        , http-client          >= 0.4 && < 0.7
-         , http-conduit         >= 2.1.4 && < 3
-         , http-types           >= 0.8 && (<0.11 || >=0.12)
-         , lens                 >= 4.4
---
-2.23.0
diff --git a/pkgs/development/haskell-modules/patches/darcs-2.14.2-Compile-against-GHC-8.8.patch b/pkgs/development/haskell-modules/patches/darcs-2.14.2-Compile-against-GHC-8.8.patch
deleted file mode 100644
index 04ff068e1d0..00000000000
--- a/pkgs/development/haskell-modules/patches/darcs-2.14.2-Compile-against-GHC-8.8.patch
+++ /dev/null
@@ -1,333 +0,0 @@
-From 2490fa65eeba52699a7c0e303aa5cb9b78c2b1cf Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= <mail@nh2.me>
-Date: Fri, 17 Apr 2020 20:49:23 +0200
-Subject: [PATCH] Compile against GHC 8.8
-
----
- Setup.hs                           | 15 ---------------
- src/Darcs/Patch/Depends.hs         |  2 +-
- src/Darcs/Patch/Match.hs           | 12 ++++++------
- src/Darcs/Patch/PatchInfoAnd.hs    |  2 +-
- src/Darcs/Patch/Prim/V1/Apply.hs   |  6 +++---
- src/Darcs/Patch/Prim/V1/Commute.hs |  1 +
- src/Darcs/Patch/ReadMonads.hs      |  1 +
- src/Darcs/Patch/V1/Commute.hs      |  1 +
- src/Darcs/Repository/Diff.hs       |  2 +-
- src/Darcs/Repository/Match.hs      |  2 +-
- src/Darcs/Util/Tree/Monad.hs       |  4 ++--
- 12 files changed, 30 insertions(+), 42 deletions(-)
-
-diff --git a/Setup.hs b/Setup.hs
-index f5cc3e8..05caac4 100644
---- a/Setup.hs
-+++ b/Setup.hs
-@@ -75,21 +75,6 @@
-   postInst = \ _ flags pkg lbi ->
-              installManpage pkg lbi (fromFlag $ installVerbosity flags) NoCopyDest,
- 
--  sDistHook = \ pkg lbi hooks flags -> do
--    let pkgVer = packageVersion pkg
--        verb = fromFlag $ sDistVerbosity flags
--    x <- versionPatches verb pkgVer
--    y <- context verb
--    rewriteFileEx silent "release/distributed-version" $ show x
--    rewriteFileEx silent "release/distributed-context" $ show y
--    putStrLn "about to hand over"
--    let pkg' = pkg { library = sanity (library pkg) }
--        sanity (Just lib) = Just $ lib { libBuildInfo = sanity' $ libBuildInfo lib }
--        sanity _ = error "eh"
--        sanity' bi = bi { otherModules = [ m | m <- otherModules bi, toFilePath m /= "Version" ] }
--
--    sDistHook simpleUserHooks pkg' lbi hooks flags
--             ,
-   postConf = \_ _ _ _ -> return () --- Usually this checked for external C
-              --- dependencies, but we already have performed such
-              --- check in the confHook
---- a/darcs.cabal	1970-01-01 01:00:01.000000000 +0100
-+++ b/darcs.cabal	2020-04-18 10:26:07.605129733 +0200
-@@ -1,6 +1,5 @@
- Name:           darcs

- version:        2.14.2

--x-revision: 1

- License:        GPL-2

- License-file:   COPYING

- Author:         David Roundy <droundy@darcs.net>, <darcs-devel@darcs.net>

-@@ -75,7 +74,7 @@
-   description: Use libcurl for HTTP support.

- 

- -- in future this could extend to any other external libraries,

---- e.g. libiconv 

-+-- e.g. libiconv

- flag pkgconfig

-   description: Use pkgconfig to configure libcurl

-   default: False

-@@ -113,7 +112,7 @@
- -- ----------------------------------------------------------------------

- 

- custom-setup

--    setup-depends: base      >= 4.9 && < 4.13,

-+    setup-depends: base      >= 4.9 && <5,

-                    Cabal     >= 1.24,

-                    process   >= 1.2.3.0 && < 1.7,

-                    filepath  >= 1.4.1 && < 1.5.0.0,

-@@ -381,7 +380,7 @@
-     else

-       build-depends:  unix >= 2.7.1.0 && < 2.8

- 

--    build-depends:    base              >= 4.9 && < 4.13,

-+    build-depends:    base              >= 4.9 && <5,

-                       stm               >= 2.1 && < 2.6,

-                       binary            >= 0.5 && < 0.10,

-                       containers        >= 0.5.6.2 && < 0.7,

-@@ -402,19 +401,19 @@
-                       tar               >= 0.5 && < 0.6,

-                       data-ordlist      == 0.4.*,

-                       attoparsec        >= 0.13.0.1 && < 0.14,

--                      zip-archive       >= 0.3 && < 0.5,

-+                      zip-archive       >= 0.3 && <1,

-                       async             >= 2.0.2 && < 2.3,

--                      sandi             >= 0.4 && < 0.6,

-+                      sandi             >= 0.4 && <1,

-                       unix-compat       >= 0.4.2 && < 0.6,

-                       bytestring        >= 0.10.6 && < 0.11,

-                       old-time          >= 1.1.0.3 && < 1.2,

-                       time              >= 1.5.0.1 && < 1.10,

--                      text              >= 1.2.1.3 && < 1.3,

-+                      text              >= 1.2.1.3 && <2,

-                       directory         >= 1.2.6.2 && < 1.4,

-                       process           >= 1.2.3.0 && < 1.7,

-                       array             >= 0.5.1.0 && < 0.6,

-                       random            >= 1.1 && < 1.2,

--                      hashable          >= 1.2.3.3 && < 1.3,

-+                      hashable          >= 1.2.3.3 && <2,

-                       mmap              >= 0.5.9 && < 0.6,

-                       zlib              >= 0.6.1.2 && < 0.7.0.0,

-                       network-uri       == 2.6.*,

-@@ -443,7 +442,7 @@
- 

-     -- The terminfo package cannot be built on Windows.

-     if flag(terminfo) && !os(windows)

--      build-depends:  terminfo >= 0.4.0.2 && < 0.5

-+      build-depends:  terminfo >= 0.4.0.2 && <1

-       cpp-options:    -DHAVE_TERMINFO

- 

-     default-extensions:

-@@ -500,7 +499,7 @@
-   cc-options:       -D_REENTRANT

- 

-   build-depends:    darcs,

--                    base              >= 4.9 && < 4.13

-+                    base              >= 4.9 && <5

- 

- -- ----------------------------------------------------------------------

- -- unit test driver

-@@ -518,7 +517,7 @@
-     build-depends:  Win32 >= 2.3.1 && < 2.4

- 

-   build-depends:    darcs,

--                    base         >= 4.9 && < 4.13,

-+                    base         >= 4.9 && <5,

-                     array        >= 0.5.1.0 && < 0.6,

-                     bytestring   >= 0.10.6 && < 0.11,

-                     cmdargs      >= 0.10.10 && < 0.11,

-@@ -527,15 +526,15 @@
-                     mtl          >= 2.2.1 && < 2.3,

-                     shelly       >= 1.6.8 && < 1.9,

-                     split        >= 0.2.2 && < 0.3,

--                    text         >= 1.2.1.3 && < 1.3,

-+                    text         >= 1.2.1.3 && <2,

-                     directory    >= 1.2.6.2 && < 1.4,

-                     FindBin      >= 0.0.5 && < 0.1,

--                    QuickCheck   >= 2.8.2 && < 2.13,

-+                    QuickCheck   >= 2.8.2 && <3,

-                     HUnit        >= 1.3 && < 1.7,

-                     test-framework             >= 0.8.1.1 && < 0.9,

-                     test-framework-hunit       >= 0.3.0.2 && < 0.4,

-                     test-framework-quickcheck2 >= 0.3.0.3 && < 0.4,

--                    zip-archive  >= 0.3 && < 0.5

-+                    zip-archive  >= 0.3 && <1

- 

-   -- https://github.com/yesodweb/Shelly.hs/issues/177

-   if os(windows)

-diff --git a/src/Darcs/Patch/Depends.hs b/src/Darcs/Patch/Depends.hs
-index 8531294..a4c71cb 100644
---- a/src/Darcs/Patch/Depends.hs
-+++ b/src/Darcs/Patch/Depends.hs
-@@ -251,7 +251,7 @@ splitOnTag _ (PatchSet NilRL NilRL) = Nothing
- unwrapOneTagged :: (Monad m) => PatchSet rt p wX wY -> m (PatchSet rt p wX wY)
- unwrapOneTagged (PatchSet (ts :<: Tagged t _ tps) ps) =
-     return $ PatchSet ts (tps :<: t +<+ ps)
--unwrapOneTagged _ = fail "called unwrapOneTagged with no Tagged's in the set"
-+unwrapOneTagged _ = error "called unwrapOneTagged with no Tagged's in the set"
- 
- -- | @getUncovered ps@ returns the 'PatchInfo' for all the patches in
- --   @ps@ that are not depended on by anything else *through explicit
-diff --git a/src/Darcs/Patch/Match.hs b/src/Darcs/Patch/Match.hs
-index aba6c7a..2b6f53a 100644
---- a/src/Darcs/Patch/Match.hs
-+++ b/src/Darcs/Patch/Match.hs
-@@ -421,7 +421,7 @@ getNonrangeMatchS fs repo =
-         Just m -> if nonrangeMatcherIsTag fs
-                         then getTagS m repo
-                         else getMatcherS Exclusive m repo
--        Nothing -> fail "Pattern not specified in getNonrangeMatch."
-+        Nothing -> error "Pattern not specified in getNonrangeMatch."
- 
- -- | @firstMatch fs@ tells whether @fs@ implies a "first match", that
- -- is if we match against patches from a point in the past on, rather
-@@ -441,7 +441,7 @@ getFirstMatchS fs repo =
-      Just (_,b) -> unpullLastN repo b -- b is chronologically earlier than a
-      Nothing    ->
-       case firstMatcher fs of
--               Nothing -> fail "Pattern not specified in getFirstMatchS."
-+               Nothing -> error "Pattern not specified in getFirstMatchS."
-                Just m -> if firstMatcherIsTag fs
-                          then getTagS m repo
-                          else getMatcherS Inclusive m repo
-@@ -462,7 +462,7 @@ checkMatchSyntax :: [MatchFlag] -> IO ()
- checkMatchSyntax opts =
-  case getMatchPattern opts of
-   Nothing -> return ()
--  Just p  -> either fail (const $ return ()) (parseMatch p::Either String (MatchFun rt DummyPatch))
-+  Just p  -> either error (const $ return ()) (parseMatch p::Either String (MatchFun rt DummyPatch))
- 
- getMatchPattern :: [MatchFlag] -> Maybe String
- getMatchPattern [] = Nothing
-@@ -718,7 +718,7 @@ getMatcherS :: (ApplyMonad (ApplyState p) m, Matchable p) =>
- getMatcherS ioe m repo =
-     if matchExists m repo
-     then applyInvToMatcher ioe m repo
--    else fail $ "Couldn't match pattern "++ show m
-+    else error $ "Couldn't match pattern "++ show m
- 
- getTagS :: (ApplyMonad (ApplyState p) m, MonadProgress m, Matchable p) =>
-              Matcher rt p -> PatchSet rt p Origin wX -> m ()
-diff --git a/src/Darcs/Patch/PatchInfoAnd.hs b/src/Darcs/Patch/PatchInfoAnd.hs
-index 2da7ec8..1147410 100644
---- a/src/Darcs/Patch/PatchInfoAnd.hs
-+++ b/src/Darcs/Patch/PatchInfoAnd.hs
-@@ -167,7 +167,7 @@ conscientiously er (PIAP pinf hp) =
- 
- -- | @hopefullyM@ is a version of @hopefully@ which calls @fail@ in a
- -- monad instead of erroring.
--hopefullyM :: Monad m => PatchInfoAnd rt p wA wB -> m (WrappedNamed rt p wA wB)
-+hopefullyM :: MonadFail m => PatchInfoAnd rt p wA wB -> m (WrappedNamed rt p wA wB)
- hopefullyM (PIAP pinf hp) = case hopefully2either hp of
-                               Right p -> return p
-                               Left e -> fail $ renderString
-diff --git a/src/Darcs/Patch/Prim/V1/Apply.hs b/src/Darcs/Patch/Prim/V1/Apply.hs
-index bea7e41..7984d21 100644
---- a/src/Darcs/Patch/Prim/V1/Apply.hs
-+++ b/src/Darcs/Patch/Prim/V1/Apply.hs
-@@ -41,13 +41,13 @@ instance Apply Prim where
-     apply (FP f (TokReplace t o n)) = mModifyFilePS f doreplace
-         where doreplace fc =
-                   case tryTokReplace t (BC.pack o) (BC.pack n) fc of
--                  Nothing -> fail $ "replace patch to " ++ fn2fp f
-+                  Nothing -> error $ "replace patch to " ++ fn2fp f
-                              ++ " couldn't apply."
-                   Just fc' -> return fc'
-     apply (FP f (Binary o n)) = mModifyFilePS f doapply
-         where doapply oldf = if o == oldf
-                              then return n
--                             else fail $ "binary patch to " ++ fn2fp f
-+                             else error $ "binary patch to " ++ fn2fp f
-                                   ++ " couldn't apply."
-     apply (DP d AddDir) = mCreateDirectory d
-     apply (DP d RmDir) = mRemoveDirectory d
-@@ -115,7 +115,7 @@ applyHunk f h fc =
-   case applyHunkLines h fc of
-     Right fc' -> return fc'
-     Left msg ->
--      fail $
-+      error $
-       "### Error applying:\n" ++ renderHunk h ++
-       "\n### to file " ++ fn2fp f ++ ":\n" ++ BC.unpack fc ++
-       "### Reason: " ++ msg
-diff --git a/src/Darcs/Patch/Prim/V1/Commute.hs b/src/Darcs/Patch/Prim/V1/Commute.hs
-index 7639dbd..e1432e6 100644
---- a/src/Darcs/Patch/Prim/V1/Commute.hs
-+++ b/src/Darcs/Patch/Prim/V1/Commute.hs
-@@ -58,6 +58,7 @@ instance  Monad Perhaps where
-     Failed   >>= _      =  Failed
-     Unknown  >>= _      =  Unknown
-     return              =  Succeeded
-+instance  MonadFail Perhaps where
-     fail _              =  Unknown
- 
- instance Alternative Perhaps where
-diff --git a/src/Darcs/Patch/ReadMonads.hs b/src/Darcs/Patch/ReadMonads.hs
-index 62a4f81..e1cb149 100644
---- a/src/Darcs/Patch/ReadMonads.hs
-+++ b/src/Darcs/Patch/ReadMonads.hs
-@@ -237,6 +237,7 @@ failSM _ = SM (\_ -> Nothing)
- instance Monad SM where
-     (>>=)  = bindSM
-     return = returnSM
-+instance MonadFail SM where
-     fail   = failSM
- 
- instance ParserM SM where
-diff --git a/src/Darcs/Patch/V1/Commute.hs b/src/Darcs/Patch/V1/Commute.hs
-index 0bb41a3..c6c3382 100644
---- a/src/Darcs/Patch/V1/Commute.hs
-+++ b/src/Darcs/Patch/V1/Commute.hs
-@@ -93,6 +93,7 @@ instance  Monad Perhaps where
-     Failed   >>= _      =  Failed
-     Unknown  >>= _      =  Unknown
-     return              =  Succeeded
-+instance  MonadFail Perhaps where
-     fail _              =  Unknown
- 
- instance Alternative Perhaps where
-diff --git a/src/Darcs/Repository/Diff.hs b/src/Darcs/Repository/Diff.hs
-index 8078d49..e0e2341 100644
---- a/src/Darcs/Repository/Diff.hs
-+++ b/src/Darcs/Repository/Diff.hs
-@@ -138,7 +138,7 @@ treeDiff da ft t1 t2 = do
-         do rmDirP <- diff p (Removed subtree)
-            addFileP <- diff p (Changed (File emptyBlob) b')
-            return $ joinGap (+>+) rmDirP addFileP
--    diff p _ = fail $ "Missing case at path " ++ show p
-+    diff p _ = error $ "Missing case at path " ++ show p
- 
-     text_diff p a b
-         | BL.null a && BL.null b = emptyGap NilFL
-diff --git a/src/Darcs/Repository/Match.hs b/src/Darcs/Repository/Match.hs
-index 08c9f13..f33cabe 100644
---- a/src/Darcs/Repository/Match.hs
-+++ b/src/Darcs/Repository/Match.hs
-@@ -60,7 +60,7 @@ getNonrangeMatch :: (ApplyMonad (ApplyState p) DefaultIO, IsRepoType rt, RepoPat
- getNonrangeMatch r = withRecordedMatch r . getMatch where
-   getMatch fs = case hasIndexRange fs of
-     Just (n, m) | n == m -> applyNInv (n-1)
--                | otherwise -> fail "Index range is not allowed for this command."
-+                | otherwise -> error "Index range is not allowed for this command."
-     _ -> getNonrangeMatchS fs
- 
- getOnePatchset :: (IsRepoType rt, RepoPatch p)
-diff --git a/src/Darcs/Util/Tree/Monad.hs b/src/Darcs/Util/Tree/Monad.hs
-index 0e01d9b..296fdc4 100644
---- a/src/Darcs/Util/Tree/Monad.hs
-+++ b/src/Darcs/Util/Tree/Monad.hs
-@@ -216,7 +216,7 @@ instance (Monad m) => TreeRO (TreeMonad m) where
-            t <- gets tree
-            let f = findFile t p'
-            case f of
--             Nothing -> fail $ "No such file " ++ show p'
-+             Nothing -> error $ "No such file " ++ show p'
-              Just x -> lift (readBlob x)
- 
-     currentDirectory = ask
-@@ -251,7 +251,7 @@ instance (Monad m) => TreeRW (TreeMonad m) where
-            let item = find tr from'
-                found_to = find tr to'
-            unless (isNothing found_to) $
--                  fail $ "Error renaming: destination " ++ show to ++ " exists."
-+                  error $ "Error renaming: destination " ++ show to ++ " exists."
-            unless (isNothing item) $ do
-                   modifyItem from Nothing
-                   modifyItem to item
--- 
-2.23.1
-
diff --git a/pkgs/development/haskell-modules/patches/darcs-setup.patch b/pkgs/development/haskell-modules/patches/darcs-setup.patch
deleted file mode 100644
index fbc7efde428..00000000000
--- a/pkgs/development/haskell-modules/patches/darcs-setup.patch
+++ /dev/null
@@ -1,120 +0,0 @@
---- darcs-2.14.2/Setup.hs	2019-01-27 03:14:51.000000000 +1300
-+++ darcs.net/Setup.hs	2019-10-18 02:41:57.000000000 +1300
-@@ -11,7 +11,9 @@
-          , TestSuite(testBuildInfo)
-          , updatePackageDescription
-          , cppOptions, ccOptions
--         , library, libBuildInfo, otherModules )
-+         , library, libBuildInfo, otherModules
-+         , ComponentName(CExeName)
-+         )
- import Distribution.Package
-          ( packageVersion )
- import Distribution.Version( Version )
-@@ -21,24 +23,27 @@
- import Distribution.Simple.Setup
-     (buildVerbosity, copyDest, copyVerbosity, fromFlag,
-      haddockVerbosity, installVerbosity, sDistVerbosity, replVerbosity )
--import Distribution.Simple.BuildPaths ( autogenModulesDir )
-+import Distribution.Simple.BuildPaths ( autogenPackageModulesDir )
- import Distribution.System
-          ( OS(Windows), buildOS )
- import Distribution.Simple.Utils
-     (copyFiles, createDirectoryIfMissingVerbose, rawSystemStdout,
--     rewriteFile )
-+     rewriteFileEx)
-+import Distribution.Types.UnqualComponentName
- import Distribution.Verbosity
--         ( Verbosity )
-+         ( Verbosity, silent )
- import Distribution.Text
-          ( display )
--import Control.Monad ( unless, void )
- 
-+import Control.Monad ( unless, when, void )
- import System.Directory
-     ( doesDirectoryExist, doesFileExist )
- import System.IO
-     ( openFile, IOMode(..) )
- import System.Process (runProcess)
- import Data.List( isInfixOf, lines )
-+import qualified Data.Map as M
-+import Data.Maybe ( isJust )
- import System.FilePath       ( (</>) )
- import Foreign.Marshal.Utils ( with )
- import Foreign.Storable      ( peek )
-@@ -75,8 +80,8 @@
-         verb = fromFlag $ sDistVerbosity flags
-     x <- versionPatches verb pkgVer
-     y <- context verb
--    rewriteFile "release/distributed-version" $ show x
--    rewriteFile "release/distributed-context" $ show y
-+    rewriteFileEx silent "release/distributed-version" $ show x
-+    rewriteFileEx silent "release/distributed-context" $ show y
-     putStrLn "about to hand over"
-     let pkg' = pkg { library = sanity (library pkg) }
-         sanity (Just lib) = Just $ lib { libBuildInfo = sanity' $ libBuildInfo lib }
-@@ -105,8 +110,7 @@
-   littleEndian <- testEndianness
-   let args = ("-DPACKAGE_VERSION=" ++ show' version) :
-              [arg | (arg, True) <-         -- include fst iff snd.
--              [-- We have MAPI iff building on/for Windows.
--               ("-DHAVE_MAPI", buildOS == Windows),
-+              [
-                ("-DLITTLEENDIAN", littleEndian),
-                ("-DBIGENDIAN", not littleEndian)]]
-       bi = emptyBuildInfo { cppOptions = args, ccOptions = args }
-@@ -133,20 +137,26 @@
- -- man page
- -- ---------------------------------------------------------------------
- 
-+hasDarcsExe :: LocalBuildInfo -> Bool
-+hasDarcsExe = isJust . M.lookup darcsExe . componentNameMap where
-+  darcsExe = CExeName (mkUnqualComponentName "darcs")
-+
- buildManpage :: LocalBuildInfo -> IO ()
--buildManpage lbi = do
--  let darcs = buildDir lbi </> "darcs/darcs"
--      manpage = buildDir lbi </> "darcs/darcs.1"
--  manpageHandle <- openFile manpage WriteMode
--  void $ runProcess darcs ["help","manpage"]
--             Nothing Nothing Nothing (Just manpageHandle) Nothing
-+buildManpage lbi =
-+  when (hasDarcsExe lbi) $ do
-+    let darcs = buildDir lbi </> "darcs/darcs"
-+        manpage = buildDir lbi </> "darcs/darcs.1"
-+    manpageHandle <- openFile manpage WriteMode
-+    void $ runProcess darcs ["help","manpage"]
-+            Nothing Nothing Nothing (Just manpageHandle) Nothing
- 
--installManpage :: PackageDescription -> LocalBuildInfo
--                  -> Verbosity -> CopyDest -> IO ()
-+installManpage :: PackageDescription -> LocalBuildInfo -> Verbosity -> CopyDest -> IO ()
- installManpage pkg lbi verbosity copy =
--    copyFiles verbosity
--              (mandir (absoluteInstallDirs pkg lbi copy) </> "man1")
--              [(buildDir lbi </> "darcs", "darcs.1")]
-+  when (hasDarcsExe lbi) $
-+    copyFiles
-+      verbosity
-+      (mandir (absoluteInstallDirs pkg lbi copy) </> "man1")
-+      [(buildDir lbi </> "darcs", "darcs.1")]
- 
- -- ---------------------------------------------------------------------
- -- version module
-@@ -187,12 +197,13 @@
- generateVersionModule :: Verbosity -> LocalBuildInfo
-                       -> String -> String -> IO ()
- generateVersionModule verbosity lbi version state = do
--  let dir = autogenModulesDir lbi
-+  let dir = autogenPackageModulesDir lbi
-   createDirectoryIfMissingVerbose verbosity True dir
-   ctx <- context verbosity
-   hash <- weakhash verbosity
--  rewriteFile (dir </> "Version.hs") $ unlines
-+  rewriteFileEx silent (dir </> "Version.hs") $ unlines
-     ["module Version where"
-+    ,"import Darcs.Prelude"
-     ,"version, weakhash, context :: String"
-     ,"version = \"" ++ version ++ " (" ++ state ++ ")\""
-     ,"weakhash = " ++ case hash of
diff --git a/pkgs/development/haskell-modules/patches/fix-dbus-for-ghc-8.10.x.patch b/pkgs/development/haskell-modules/patches/fix-dbus-for-ghc-8.10.x.patch
deleted file mode 100644
index 7ed390d3f23..00000000000
--- a/pkgs/development/haskell-modules/patches/fix-dbus-for-ghc-8.10.x.patch
+++ /dev/null
@@ -1,383 +0,0 @@
-Only in dbus-1.2.13-new: .codeclimate.yml
-diff -ur dbus-1.2.13-old/dbus.cabal dbus-1.2.13-new/dbus.cabal
---- dbus-1.2.13-old/dbus.cabal	2020-04-25 19:29:27.372272952 +0200
-+++ dbus-1.2.13-new/dbus.cabal	2020-04-25 19:26:36.140991920 +0200
-@@ -1,172 +1,180 @@
--cabal-version: >=1.8
- name: dbus
- version: 1.2.13
- license: Apache-2.0
- license-file: license.txt
--maintainer: Andrey Sverdlichenko <blaze@ruddy.ru>
- author: John Millikin <john@john-millikin.com>
-+maintainer: Andrey Sverdlichenko <blaze@ruddy.ru>
-+build-type: Simple
-+cabal-version: >= 1.8
-+category: Network, Desktop
- stability: experimental
- homepage: https://github.com/rblaze/haskell-dbus#readme
-+
- synopsis: A client library for the D-Bus IPC system.
- description:
--    D-Bus is a simple, message-based protocol for inter-process
--    communication, which allows applications to interact with other parts of
--    the machine and the user's session using remote procedure calls.
--    .
--    D-Bus is a essential part of the modern Linux desktop, where it replaces
--    earlier protocols such as CORBA and DCOP.
--    .
--    This library is an implementation of the D-Bus protocol in Haskell. It
--    can be used to add D-Bus support to Haskell applications, without the
--    awkward interfaces common to foreign bindings.
--    .
--    Example: connect to the session bus, and get a list of active names.
--    .
--    @
--    &#x7b;-\# LANGUAGE OverloadedStrings \#-&#x7d;
--    .
--    import Data.List (sort)
--    import DBus
--    import DBus.Client
--    .
--    main = do
--    &#x20;   client <- connectSession
--    &#x20;   //
--    &#x20;   \-- Request a list of connected clients from the bus
--    &#x20;   reply <- call_ client (methodCall \"\/org\/freedesktop\/DBus\" \"org.freedesktop.DBus\" \"ListNames\")
--    &#x20;       &#x7b; methodCallDestination = Just \"org.freedesktop.DBus\"
--    &#x20;       &#x7d;
--    &#x20;   //
--    &#x20;   \-- org.freedesktop.DBus.ListNames() returns a single value, which is
--    &#x20;   \-- a list of names (here represented as [String])
--    &#x20;   let Just names = fromVariant (methodReturnBody reply !! 0)
--    &#x20;   //
--    &#x20;   \-- Print each name on a line, sorted so reserved names are below
--    &#x20;   \-- temporary names.
--    &#x20;   mapM_ putStrLn (sort names)
--    @
--    .
--    >$ ghc --make list-names.hs
--    >$ ./list-names
--    >:1.0
--    >:1.1
--    >:1.10
--    >:1.106
--    >:1.109
--    >:1.110
--    >ca.desrt.dconf
--    >org.freedesktop.DBus
--    >org.freedesktop.Notifications
--    >org.freedesktop.secrets
--    >org.gnome.ScreenSaver
--category: Network, Desktop
--build-type: Simple
-+  D-Bus is a simple, message-based protocol for inter-process
-+  communication, which allows applications to interact with other parts of
-+  the machine and the user's session using remote procedure calls.
-+  .
-+  D-Bus is a essential part of the modern Linux desktop, where it replaces
-+  earlier protocols such as CORBA and DCOP.
-+  .
-+  This library is an implementation of the D-Bus protocol in Haskell. It
-+  can be used to add D-Bus support to Haskell applications, without the
-+  awkward interfaces common to foreign bindings.
-+  .
-+  Example: connect to the session bus, and get a list of active names.
-+  .
-+  @
-+  &#x7b;-\# LANGUAGE OverloadedStrings \#-&#x7d;
-+  .
-+  import Data.List (sort)
-+  import DBus
-+  import DBus.Client
-+  .
-+  main = do
-+  &#x20;   client <- connectSession
-+  &#x20;
-+  &#x20;   -- Request a list of connected clients from the bus
-+  &#x20;   reply <- call_ client (methodCall \"\/org\/freedesktop\/DBus\" \"org.freedesktop.DBus\" \"ListNames\")
-+  &#x20;       &#x7b; methodCallDestination = Just \"org.freedesktop.DBus\"
-+  &#x20;       &#x7d;
-+  &#x20;
-+  &#x20;   -- org.freedesktop.DBus.ListNames() returns a single value, which is
-+  &#x20;   -- a list of names (here represented as [String])
-+  &#x20;   let Just names = fromVariant (methodReturnBody reply !! 0)
-+  &#x20;
-+  &#x20;   -- Print each name on a line, sorted so reserved names are below
-+  &#x20;   -- temporary names.
-+  &#x20;   mapM_ putStrLn (sort names)
-+  @
-+  .
-+  >$ ghc --make list-names.hs
-+  >$ ./list-names
-+  >:1.0
-+  >:1.1
-+  >:1.10
-+  >:1.106
-+  >:1.109
-+  >:1.110
-+  >ca.desrt.dconf
-+  >org.freedesktop.DBus
-+  >org.freedesktop.Notifications
-+  >org.freedesktop.secrets
-+  >org.gnome.ScreenSaver
-+
-+
- extra-source-files:
--    examples/dbus-monitor.hs
--    examples/export.hs
--    examples/introspect.hs
--    examples/list-names.hs
--    idlxml/dbus.xml
-+  examples/dbus-monitor.hs
-+  examples/export.hs
-+  examples/introspect.hs
-+  examples/list-names.hs
-+  idlxml/dbus.xml
- 
- source-repository head
--    type: git
--    location: https://github.com/rblaze/haskell-dbus
-+  type: git
-+  location: https://github.com/rblaze/haskell-dbus
- 
- library
--    exposed-modules:
--        DBus
--        DBus.Client
--        DBus.Generation
--        DBus.Internal.Address
--        DBus.Internal.Message
--        DBus.Internal.Types
--        DBus.Internal.Wire
--        DBus.Introspection
--        DBus.Introspection.Parse
--        DBus.Introspection.Render
--        DBus.Introspection.Types
--        DBus.Socket
--        DBus.TH
--        DBus.Transport
--    hs-source-dirs: lib
--    ghc-options: -W -Wall
--    build-depends:
--        base ==4.*,
--        bytestring <0.11,
--        cereal <0.6,
--        conduit >=1.3.0 && <1.4,
--        containers <0.7,
--        deepseq <1.5,
--        exceptions <0.11,
--        filepath <1.5,
--        lens <4.20,
--        network >=3.0.1.0 && <3.2,
--        parsec <3.2,
--        random <1.2,
--        split <0.3,
--        template-haskell <2.16.0.0,
--        text <1.3,
--        th-lift <0.9,
--        transformers <0.6,
--        unix <2.8,
--        vector <0.13,
--        xml-conduit >=1.9.0.0 && <1.10.0.0,
--        xml-types <0.4
-+  ghc-options: -W -Wall
-+  hs-source-dirs: lib
-+
-+  build-depends:
-+      base >=4 && <5
-+    , bytestring
-+    , cereal
-+    , conduit >= 1.3.0
-+    , containers
-+    , deepseq
-+    , exceptions
-+    , filepath
-+    , lens < 4.20
-+    , network >= 3.0.1.0 && < 3.2
-+    , parsec
-+    , random
-+    , split
-+    , template-haskell < 2.17.0.0
-+    , text
-+    , th-lift < 0.9
-+    , transformers
-+    , unix
-+    , vector
-+    , xml-conduit >= 1.9.0.0 && < 1.10.0.0
-+    , xml-types
-+
-+  exposed-modules:
-+    DBus
-+    DBus.Client
-+    DBus.Generation
-+    DBus.Internal.Address
-+    DBus.Internal.Message
-+    DBus.Internal.Types
-+    DBus.Internal.Wire
-+    DBus.Introspection
-+    DBus.Introspection.Parse
-+    DBus.Introspection.Render
-+    DBus.Introspection.Types
-+    DBus.Socket
-+    DBus.TH
-+    DBus.Transport
- 
- test-suite dbus_tests
--    type: exitcode-stdio-1.0
--    main-is: DBusTests.hs
--    hs-source-dirs: tests
--    other-modules:
--        DBusTests.Address
--        DBusTests.BusName
--        DBusTests.Client
--        DBusTests.ErrorName
--        DBusTests.Generation
--        DBusTests.Integration
--        DBusTests.InterfaceName
--        DBusTests.Introspection
--        DBusTests.MemberName
--        DBusTests.Message
--        DBusTests.ObjectPath
--        DBusTests.Serialization
--        DBusTests.Signature
--        DBusTests.Socket
--        DBusTests.TH
--        DBusTests.Transport
--        DBusTests.Util
--        DBusTests.Variant
--        DBusTests.Wire
--    ghc-options: -W -Wall -fno-warn-orphans
--    build-depends:
--        dbus -any,
--        base ==4.*,
--        bytestring <0.11,
--        cereal <0.6,
--        containers <0.7,
--        directory <1.4,
--        extra <1.8,
--        filepath <1.5,
--        network >=3.0.1.0 && <3.2,
--        parsec <3.2,
--        process <1.7,
--        QuickCheck <2.15,
--        random <1.2,
--        resourcet <1.3,
--        tasty <1.3,
--        tasty-hunit <0.11,
--        tasty-quickcheck <0.11,
--        text <1.3,
--        transformers <0.6,
--        unix <2.8,
--        vector <0.13
-+  type: exitcode-stdio-1.0
-+  main-is: DBusTests.hs
-+  hs-source-dirs: tests
-+  ghc-options: -W -Wall -fno-warn-orphans
-+
-+  build-depends:
-+      dbus
-+    , base >=4 && <5
-+    , bytestring
-+    , cereal
-+    , containers
-+    , directory
-+    , extra < 1.8
-+    , filepath
-+    , network >= 3.0.1.0 && < 3.2
-+    , parsec
-+    , process
-+    , QuickCheck < 2.15
-+    , random
-+    , resourcet
-+    , tasty
-+    , tasty-hunit
-+    , tasty-quickcheck
-+    , text
-+    , transformers
-+    , unix
-+    , vector
-+
-+  other-modules:
-+    DBusTests.Address
-+    DBusTests.BusName
-+    DBusTests.Client
-+    DBusTests.ErrorName
-+    DBusTests.Generation
-+    DBusTests.Integration
-+    DBusTests.InterfaceName
-+    DBusTests.Introspection
-+    DBusTests.MemberName
-+    DBusTests.Message
-+    DBusTests.ObjectPath
-+    DBusTests.Serialization
-+    DBusTests.Signature
-+    DBusTests.Socket
-+    DBusTests.TH
-+    DBusTests.Transport
-+    DBusTests.Util
-+    DBusTests.Variant
-+    DBusTests.Wire
- 
- benchmark dbus_benchmarks
--    type: exitcode-stdio-1.0
--    main-is: DBusBenchmarks.hs
--    hs-source-dirs: benchmarks
--    ghc-options: -Wall -fno-warn-orphans
--    build-depends:
--        dbus -any,
--        base ==4.*,
--        criterion <1.6
-+  type: exitcode-stdio-1.0
-+  main-is: DBusBenchmarks.hs
-+  hs-source-dirs: benchmarks
-+  ghc-options: -Wall -fno-warn-orphans
-+
-+  build-depends:
-+      dbus
-+    , base >=4 && <5
-+    , criterion
-Only in dbus-1.2.13-new: .git
-Only in dbus-1.2.13-new: .gitignore
-diff -ur dbus-1.2.13-old/lib/DBus/Generation.hs dbus-1.2.13-new/lib/DBus/Generation.hs
---- dbus-1.2.13-old/lib/DBus/Generation.hs	2019-02-14 16:37:47.000000000 +0100
-+++ dbus-1.2.13-new/lib/DBus/Generation.hs	2020-04-25 19:26:36.144991997 +0200
-@@ -1,3 +1,4 @@
-+{-# LANGUAGE CPP #-}
- {-# LANGUAGE OverloadedStrings #-}
- {-# LANGUAGE TemplateHaskell #-}
- module DBus.Generation where
-@@ -26,6 +27,13 @@
- import           Prelude hiding (mapM)
- import           System.Posix.Types (Fd(..))
- 
-+-- | Compatibility helper to create (total) tuple expressions
-+mkTupE :: [Exp] -> Exp
-+mkTupE = TupE
-+#if MIN_VERSION_template_haskell(2,16,0)
-+         . map Just
-+#endif
-+
- type ClientBusPathR a = ReaderT (Client, T.BusName, T.ObjectPath) IO a
- 
- dbusInvoke :: (Client -> T.BusName -> T.ObjectPath -> a) -> ClientBusPathR a
-@@ -232,8 +240,8 @@
-     finalOutputNames <- buildOutputNames
-     let variantListExp = map makeToVariantApp methodArgNames
-         mapOrHead' = mapOrHead outputLength
--        fromVariantExp = mapOrHead' makeFromVariantApp fromVariantOutputNames TupE
--        finalResultTuple = mapOrHead' VarE finalOutputNames TupE
-+        fromVariantExp = mapOrHead' makeFromVariantApp fromVariantOutputNames mkTupE
-+        finalResultTuple = mapOrHead' VarE finalOutputNames mkTupE
-         maybeExtractionPattern = mapOrHead' makeJustPattern finalOutputNames TupP
-         getMethodCallDefDec = [d|
-                $( varP methodCallDefN ) =
-@@ -432,7 +440,7 @@
-                      }
-                  |]
-     let mapOrHead' = mapOrHead argCount
--        fromVariantExp = mapOrHead' makeFromVariantApp fromVariantOutputNames TupE
-+        fromVariantExp = mapOrHead' makeFromVariantApp fromVariantOutputNames mkTupE
-         maybeExtractionPattern = mapOrHead' makeJustPattern toHandlerOutputNames TupP
-         applyToName toApply n = AppE toApply $ VarE n
-         finalApplication = foldl applyToName (VarE handlerArgN)
diff --git a/pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch b/pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch
deleted file mode 100644
index 48cf6a035af..00000000000
--- a/pkgs/development/haskell-modules/patches/ghc-paths-nix-ghcjs.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-diff --git a/GHC/Paths.hs b/GHC/Paths.hs
-index c87565d..88b3db4 100644
---- a/GHC/Paths.hs
-+++ b/GHC/Paths.hs
-@@ -1,13 +1,35 @@
- {-# LANGUAGE CPP #-}
-+{-# LANGUAGE ScopedTypeVariables #-}
- 
- module GHC.Paths (
-         ghc, ghc_pkg, libdir, docdir
-   ) where
- 
-+import Control.Exception as E
-+import Data.Maybe
-+import System.Environment
-+import System.IO.Unsafe
-+
-+-- Yes, there's lookupEnv now, but we want to be compatible
-+-- with older GHCs.
-+checkEnv :: String -> IO (Maybe String)
-+checkEnv var = E.catch (fmap Just (getEnv var))
-+                       (\ (e :: IOException) -> return Nothing)
-+
-+nixLibdir, nixDocdir, nixGhc, nixGhcPkg :: Maybe FilePath
-+nixLibdir = unsafePerformIO (checkEnv "NIX_GHCJS_LIBDIR")
-+nixDocdir = unsafePerformIO (checkEnv "NIX_GHCJS_DOCDIR")
-+nixGhc    = unsafePerformIO (checkEnv "NIX_GHCJS")
-+nixGhcPkg = unsafePerformIO (checkEnv "NIX_GHCJSPKG")
-+{-# NOINLINE nixLibdir #-}
-+{-# NOINLINE nixDocdir #-}
-+{-# NOINLINE nixGhc    #-}
-+{-# NOINLINE nixGhcPkg #-}
-+
- libdir, docdir, ghc, ghc_pkg :: FilePath
- 
--libdir  = GHC_PATHS_LIBDIR
--docdir  = GHC_PATHS_DOCDIR
-+libdir  = fromMaybe GHC_PATHS_LIBDIR  nixLibdir
-+docdir  = fromMaybe GHC_PATHS_DOCDIR  nixDocdir
- 
--ghc     = GHC_PATHS_GHC
--ghc_pkg = GHC_PATHS_GHC_PKG
-+ghc     = fromMaybe GHC_PATHS_GHC     nixGhc
-+ghc_pkg = fromMaybe GHC_PATHS_GHC_PKG nixGhcPkg
-diff --git a/Setup.hs b/Setup.hs
-index f2d1733..ca4792e 100644
---- a/Setup.hs
-+++ b/Setup.hs
-@@ -39,13 +39,13 @@ main = defaultMainWithHooks simpleUserHooks {
- #else
-       libdir_ <- rawSystemProgramStdoutConf (fromFlag (configVerbosity flags))
- #endif
--                     ghcProgram (withPrograms lbi) ["--print-libdir"]
-+                     ghcjsProgram (withPrograms lbi) ["--print-libdir"]
-       let libdir = reverse $ dropWhile isSpace $ reverse libdir_
- 
--          ghc_pkg = case lookupProgram ghcPkgProgram (withPrograms lbi) of
-+          ghc_pkg = case lookupProgram ghcjsPkgProgram (withPrograms lbi) of
-                           Just p  -> programPath p
-                           Nothing -> error "ghc-pkg was not found"
--          ghc     = case lookupProgram ghcProgram (withPrograms lbi) of
-+          ghc     = case lookupProgram ghcjsProgram (withPrograms lbi) of
-                           Just p  -> programPath p
-                           Nothing -> error "ghc was not found"
- 
diff --git a/pkgs/development/haskell-modules/patches/hunspell.patch b/pkgs/development/haskell-modules/patches/hunspell.patch
deleted file mode 100644
index cc115029a7a..00000000000
--- a/pkgs/development/haskell-modules/patches/hunspell.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -Naur hunspell-hs-0.1.0.0.orig/hunspell-hs.cabal hunspell-hs-0.1.0.0/hunspell-hs.cabal
---- hunspell-hs-0.1.0.0.orig/hunspell-hs.cabal	2018-08-26 20:23:33.053763300 +0200
-+++ hunspell-hs-0.1.0.0/hunspell-hs.cabal	2018-08-26 20:42:05.886074510 +0200
-@@ -37,7 +37,7 @@
-       base >=4.7 && <5
-     , stm
-   if os(linux)
--    extra-libraries:
-+    pkgconfig-depends:
-         hunspell
-   if os(darwin)
-     include-dirs:
-@@ -63,7 +63,7 @@
-     , hunspell-hs
-     , stm
-   if os(linux)
--    extra-libraries:
-+    pkgconfig-depends:
-         hunspell
-   if os(darwin)
-     include-dirs:
-@@ -88,7 +88,7 @@
-     , hunspell-hs
-     , stm
-   if os(linux)
--    extra-libraries:
-+    pkgconfig-depends:
-         hunspell
-   if os(darwin)
-     include-dirs:
diff --git a/pkgs/development/libraries/aravis/default.nix b/pkgs/development/libraries/aravis/default.nix
index dd769176256..7837fad283c 100644
--- a/pkgs/development/libraries/aravis/default.nix
+++ b/pkgs/development/libraries/aravis/default.nix
@@ -29,13 +29,13 @@ assert enableViewer -> wrapGAppsHook != null;
 
 stdenv.mkDerivation rec {
   pname = "aravis";
-  version = "0.8.22";
+  version = "0.8.24";
 
   src = fetchFromGitHub {
     owner = "AravisProject";
     repo = pname;
     rev = version;
-    sha256 = "sha256-S9DmXjywxNr5Rpx605zip76vGKBSrUwyerqXlBm05VI=";
+    sha256 = "sha256-2d2CZzRfVr45gfgIg43Rr+1SoVIxzy8YjaQJhwi5owE=";
   };
 
   outputs = [ "bin" "dev" "out" "lib" ];
diff --git a/pkgs/development/libraries/cairo/default.nix b/pkgs/development/libraries/cairo/default.nix
index c1e7b52c040..ee8e436d292 100644
--- a/pkgs/development/libraries/cairo/default.nix
+++ b/pkgs/development/libraries/cairo/default.nix
@@ -8,11 +8,14 @@
 , libGL # libGLU libGL is no longer a big dependency
 , pdfSupport ? true
 , darwin
+, testers
 }:
 
 let
   inherit (lib) optional optionals;
-in stdenv.mkDerivation rec {
+in stdenv.mkDerivation (finalAttrs: let
+  inherit (finalAttrs) pname version;
+in {
   pname = "cairo";
   version = "1.16.0";
 
@@ -132,6 +135,8 @@ in stdenv.mkDerivation rec {
 
   postInstall = lib.optionalString stdenv.isDarwin glib.flattenInclude;
 
+  passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+
   meta = with lib; {
     description = "A 2D graphics library with support for multiple output devices";
     longDescription = ''
@@ -147,6 +152,11 @@ in stdenv.mkDerivation rec {
     '';
     homepage = "http://cairographics.org/";
     license = with licenses; [ lgpl2Plus mpl10 ];
+    pkgConfigModules = [
+      "cairo-ps"
+      "cairo-svg"
+    ] ++ lib.optional gobjectSupport "cairo-gobject"
+      ++ lib.optional pdfSupport "cairo-gobject";
     platforms = platforms.all;
   };
-}
+})
diff --git a/pkgs/development/libraries/fftw/default.nix b/pkgs/development/libraries/fftw/default.nix
index c5edb592620..9d83fdb4878 100644
--- a/pkgs/development/libraries/fftw/default.nix
+++ b/pkgs/development/libraries/fftw/default.nix
@@ -12,18 +12,19 @@
 , enableMpi ? false
 , mpi
 , withDoc ? stdenv.cc.isGNU
+, testers
 }:
 
 assert lib.elem precision [ "single" "double" "long-double" "quad-precision" ];
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "fftw-${precision}";
   version = "3.3.10";
 
   src = fetchurl {
     urls = [
-      "https://fftw.org/fftw-${version}.tar.gz"
-      "ftp://ftp.fftw.org/pub/fftw/fftw-${version}.tar.gz"
+      "https://fftw.org/fftw-${finalAttrs.version}.tar.gz"
+      "ftp://ftp.fftw.org/pub/fftw/fftw-${finalAttrs.version}.tar.gz"
     ];
     sha256 = "sha256-VskyVJhSzdz6/as4ILAgDHdCZ1vpIXnlnmIVs0DiZGc=";
   };
@@ -60,11 +61,21 @@ stdenv.mkDerivation rec {
 
   nativeCheckInputs = [ perl ];
 
+  passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+
   meta = with lib; {
     description = "Fastest Fourier Transform in the West library";
     homepage = "http://www.fftw.org/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.spwhitt ];
+    pkgConfigModules = [
+      {
+        "single" = "fftw3f";
+        "double" = "fftw3";
+        "long-double" = "fftw3l";
+        "quad-precision" = "fftw3q";
+      }.${precision}
+    ];
     platforms = platforms.unix;
   };
-}
+})
diff --git a/pkgs/development/libraries/intel-media-sdk/default.nix b/pkgs/development/libraries/intel-media-sdk/default.nix
index 5e6f628aa68..11cd887729a 100644
--- a/pkgs/development/libraries/intel-media-sdk/default.nix
+++ b/pkgs/development/libraries/intel-media-sdk/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "intel-media-sdk";
-  version = "22.6.5";
+  version = "23.1.0";
 
   src = fetchFromGitHub {
     owner = "Intel-Media-SDK";
     repo = "MediaSDK";
     rev = "intel-mediasdk-${version}";
-    sha256 = "sha256-W+lDqGZAenhRZ7tf4qfDNik/3rFNDM0DGSK/CdNRb8g=";
+    sha256 = "sha256-FTyjIWYKXFAzu3SR1EGN+aTzVbX617o/KWCD/DGv69o=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/development/libraries/libappindicator/default.nix b/pkgs/development/libraries/libappindicator/default.nix
index 9df992a5763..8e68ea3f9cb 100644
--- a/pkgs/development/libraries/libappindicator/default.nix
+++ b/pkgs/development/libraries/libappindicator/default.nix
@@ -1,5 +1,3 @@
-# TODO: Resolve the issues with the Mono bindings.
-
 { stdenv, fetchgit, lib
 , pkg-config, autoreconfHook
 , glib, dbus-glib
@@ -7,11 +5,16 @@
 , gtk2, libindicator-gtk2, libdbusmenu-gtk2
 , gtk3, libindicator-gtk3, libdbusmenu-gtk3
 , gtk-doc, vala, gobject-introspection
-, monoSupport ? false, mono, gtk-sharp-2_0
- }:
+, monoSupport ? false, mono, gtk-sharp-2_0, gtk-sharp-3_0
+, testers
+}:
+
+let
+  throwBadGtkVersion = throw "unknown GTK version ${gtkVersion}";
+in
 
-stdenv.mkDerivation {
-  pname = let postfix = if gtkVersion == "2" && monoSupport then "sharp" else "gtk${gtkVersion}";
+stdenv.mkDerivation (finalAttrs: {
+  pname = let postfix = if monoSupport then "sharp" else "gtk${gtkVersion}";
           in "libappindicator-${postfix}";
   version = "12.10.1+20.10.20200706.1";
 
@@ -25,16 +28,24 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [ pkg-config autoreconfHook vala gobject-introspection gtk-doc ];
 
-  propagatedBuildInputs =
-    if gtkVersion == "2"
-    then [ gtk2 libdbusmenu-gtk2 ]
-    else [ gtk3 libdbusmenu-gtk3 ];
+  propagatedBuildInputs = {
+    "2" = [ gtk2 libdbusmenu-gtk2 ];
+    "3" = [ gtk3 libdbusmenu-gtk3 ];
+  }.${gtkVersion} or throwBadGtkVersion;
 
   buildInputs = [
     glib dbus-glib
-  ] ++ (if gtkVersion == "2"
-    then [ libindicator-gtk2 ] ++ lib.optionals monoSupport [ mono gtk-sharp-2_0 ]
-    else [ libindicator-gtk3 ]);
+    {
+      "2" = libindicator-gtk2;
+      "3" = libindicator-gtk3;
+    }.${gtkVersion} or throwBadGtkVersion
+  ] ++ lib.optionals monoSupport [
+    mono
+    {
+      "2" = gtk-sharp-2_0;
+      "3" = gtk-sharp-3_0;
+    }.${gtkVersion} or throwBadGtkVersion
+  ];
 
   preAutoreconf = ''
     gtkdocize
@@ -54,11 +65,19 @@ stdenv.mkDerivation {
     "localstatedir=\${TMPDIR}"
   ];
 
+  passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+
   meta = with lib; {
     description = "A library to allow applications to export a menu into the Unity Menu bar";
     homepage = "https://launchpad.net/libappindicator";
     license = with licenses; [ lgpl21 lgpl3 ];
+    pkgConfigModules = {
+      "2" = [ "appindicator-0.1" ];
+      "3" = [ "appindicator3-0.1" ];
+    }.${gtkVersion} or throwBadGtkVersion;
     platforms = platforms.linux;
     maintainers = [ maintainers.msteen ];
+    # TODO: Resolve the issues with the Mono bindings.
+    broken = monoSupport;
   };
-}
+})
diff --git a/pkgs/development/libraries/libdbusmenu/default.nix b/pkgs/development/libraries/libdbusmenu/default.nix
index 7b0fca85839..9efea659a65 100644
--- a/pkgs/development/libraries/libdbusmenu/default.nix
+++ b/pkgs/development/libraries/libdbusmenu/default.nix
@@ -3,13 +3,16 @@
 , glib, dbus-glib, json-glib
 , gobject-introspection, vala
 , gtkVersion ? null, gtk2, gtk3
+, testers
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libdbusmenu-${if gtkVersion == null then "glib" else "gtk${gtkVersion}"}";
   version = "16.04.0";
 
-  src = fetchurl {
+  src = let
+    inherit (finalAttrs) version;
+  in fetchurl {
     url = "https://launchpad.net/dbusmenu/${lib.versions.majorMinor version}/${version}/+download/libdbusmenu-${version}.tar.gz";
     sha256 = "12l7z8dhl917iy9h02sxmpclnhkdjryn08r8i4sr8l3lrlm4mk5r";
   };
@@ -18,7 +21,11 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     glib dbus-glib json-glib
-  ] ++ lib.optional (gtkVersion != null) (if gtkVersion == "2" then gtk2 else gtk3);
+  ] ++ lib.optional (gtkVersion != null)
+    {
+      "2" = gtk2;
+      "3" = gtk3;
+    }.${gtkVersion} or (throw "unknown GTK version ${gtkVersion}");
 
   postPatch = ''
     for f in {configure,ltmain.sh,m4/libtool.m4}; do
@@ -37,6 +44,7 @@ stdenv.mkDerivation rec {
     "CFLAGS=-Wno-error"
     "--sysconfdir=/etc"
     "--localstatedir=/var"
+    # TODO use `lib.withFeatureAs`
     (if gtkVersion == null then "--disable-gtk" else "--with-gtk=${gtkVersion}")
     "--disable-scrollkeeper"
   ] ++ lib.optional (gtkVersion != "2") "--disable-dumper";
@@ -49,11 +57,17 @@ stdenv.mkDerivation rec {
     "typelibdir=${placeholder "out"}/lib/girepository-1.0"
   ];
 
+  passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+
   meta = with lib; {
     description = "Library for passing menu structures across DBus";
     homepage = "https://launchpad.net/dbusmenu";
     license = with licenses; [ gpl3 lgpl21 lgpl3 ];
+    pkgConfigModules = [
+      "dbusmenu-glib-0.4"
+      "dbusmenu-jsonloader-0.4"
+    ] ++ lib.optional (gtkVersion == "3") "dbusmenu-gtk${gtkVersion}-0.4";
     platforms = platforms.linux;
     maintainers = [ maintainers.msteen ];
   };
-}
+})
diff --git a/pkgs/development/libraries/libdevil/default.nix b/pkgs/development/libraries/libdevil/default.nix
index 35637512e0a..0cba50c3a92 100644
--- a/pkgs/development/libraries/libdevil/default.nix
+++ b/pkgs/development/libraries/libdevil/default.nix
@@ -13,16 +13,17 @@
 , OpenGL
 , runtimeShell
 , withXorg ? true
+, testers
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "libdevil";
   version = "1.7.8";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
-    url = "mirror://sourceforge/openil/DevIL-${version}.tar.gz";
+    url = "mirror://sourceforge/openil/DevIL-${finalAttrs.version}.tar.gz";
     sha256 = "1zd850nn7nvkkhasrv7kn17kzgslr5ry933v6db62s4lr0zzlbv8";
   };
 
@@ -63,11 +64,14 @@ stdenv.mkDerivation rec {
     done
   '';
 
+  passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+
   meta = with lib; {
     homepage = "https://openil.sourceforge.net/";
     description = "An image library which can can load, save, convert, manipulate, filter and display a wide variety of image formats";
     license = licenses.lgpl2;
+    pkgConfigModules = [ "IL" ];
     platforms = platforms.mesaPlatforms;
     maintainers = with maintainers; [ ];
   };
-}
+})
diff --git a/pkgs/development/libraries/mesa/stubs.nix b/pkgs/development/libraries/mesa/stubs.nix
index 753ad1b9196..f3ea263cc9f 100644
--- a/pkgs/development/libraries/mesa/stubs.nix
+++ b/pkgs/development/libraries/mesa/stubs.nix
@@ -1,8 +1,10 @@
 { stdenv
 , libglvnd, mesa
-, OpenGL }:
+, OpenGL
+, testers
+}:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation (finalAttrs: {
   inherit (libglvnd) version;
   pname = "libGL";
   outputs = [ "out" "dev" ];
@@ -72,4 +74,8 @@ stdenv.mkDerivation {
     genPkgConfig glesv1_cm GLESv1_CM
     genPkgConfig glesv2 GLESv2
   '';
-}
+
+  passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+
+  meta.pkgConfigModules = [ "gl" "egl" "glesv1_cm" "glesv2" ];
+})
diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix
index 4caf05ef3cf..4e2c731d7e2 100644
--- a/pkgs/development/libraries/ncurses/default.nix
+++ b/pkgs/development/libraries/ncurses/default.nix
@@ -8,14 +8,15 @@
 , withCxx ? !stdenv.hostPlatform.useAndroidPrebuilt
 , mouseSupport ? false, gpm
 , unicodeSupport ? true
+, testers
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   version = "6.4";
   pname = "ncurses" + lib.optionalString (abiVersion == "5") "-abi5-compat";
 
   src = fetchurl {
-    url = "https://invisible-island.net/archives/ncurses/ncurses-${version}.tar.gz";
+    url = "https://invisible-island.net/archives/ncurses/ncurses-${finalAttrs.version}.tar.gz";
     hash = "sha256-aTEoPZrIfFBz8wtikMTHXyFjK7T8NgOsgQCBK+0kgVk=";
   };
 
@@ -169,11 +170,20 @@ stdenv.mkDerivation rec {
       ANSI/POSIX-conforming UNIX. It has even been ported to OS/2 Warp!
     '';
     license = licenses.mit;
+    pkgConfigModules = let
+      base = [
+        "form"
+        "menu"
+        "ncurses"
+        "panel"
+      ] ++ lib.optional withCxx "ncurses++";
+    in base ++ lib.optionals unicodeSupport (map (p: p + "w") base);
     platforms = platforms.all;
   };
 
   passthru = {
     ldflags = "-lncurses";
     inherit unicodeSupport abiVersion;
+    tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
   };
-}
+})
diff --git a/pkgs/development/libraries/nng/default.nix b/pkgs/development/libraries/nng/default.nix
index 7f0bd15aa54..d7b021e7c49 100644
--- a/pkgs/development/libraries/nng/default.nix
+++ b/pkgs/development/libraries/nng/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nng";
-  version = "1.5.2";
+  version = "1.6.0-prerelease";
 
   src = fetchFromGitHub {
     owner = "nanomsg";
     repo = "nng";
-    rev = "v${version}";
-    sha256 = "sha256-qbjMLpPk5FxH710Mf8AIraY0mERbaxVVhTT94W0EV+k=";
+    rev = "539e559e65cd8f227c45e4b046ac41c0edcf6c32";
+    sha256 = "sha256-86+f0um25Ywn78S2JrV54K7k3O6ots0q2dCco1aK0xM=";
   };
 
   nativeBuildInputs = [ cmake ninja ]
diff --git a/pkgs/development/libraries/protobuf/generic-v3.nix b/pkgs/development/libraries/protobuf/generic-v3.nix
index 130f681d849..cbe669ffd37 100644
--- a/pkgs/development/libraries/protobuf/generic-v3.nix
+++ b/pkgs/development/libraries/protobuf/generic-v3.nix
@@ -53,8 +53,6 @@ mkProtobufDerivation = buildProtobuf: stdenv: stdenv.mkDerivation {
     mainProgram = "protoc";
     platforms = lib.platforms.unix;
   };
-
-  passthru.version = version;
 };
 in mkProtobufDerivation(if (stdenv.buildPlatform != stdenv.hostPlatform)
                         then (mkProtobufDerivation null buildPackages.stdenv)
diff --git a/pkgs/development/ocaml-modules/caqti/driver-sqlite3.nix b/pkgs/development/ocaml-modules/caqti/driver-sqlite3.nix
index 822c002a8de..d6c230d9dbd 100644
--- a/pkgs/development/ocaml-modules/caqti/driver-sqlite3.nix
+++ b/pkgs/development/ocaml-modules/caqti/driver-sqlite3.nix
@@ -4,6 +4,8 @@ buildDunePackage {
   pname = "caqti-driver-sqlite3";
   inherit (caqti) version src;
 
+  duneVersion = "3";
+
   propagatedBuildInputs = [ caqti ocaml_sqlite3 ];
 
   meta = caqti.meta // {
diff --git a/pkgs/development/ocaml-modules/checkseum/default.nix b/pkgs/development/ocaml-modules/checkseum/default.nix
index 0b14aa57c74..498dcdfe04c 100644
--- a/pkgs/development/ocaml-modules/checkseum/default.nix
+++ b/pkgs/development/ocaml-modules/checkseum/default.nix
@@ -10,10 +10,11 @@ buildDunePackage rec {
   pname = "checkseum";
 
   minimalOCamlVersion = "4.07";
+  duneVersion = "3";
 
   src = fetchurl {
     url = "https://github.com/mirage/checkseum/releases/download/v${version}/checkseum-${version}.tbz";
-    sha256 = "sha256-K6QPMts5+hxH2a+WQ1N0lwMBoshG2T0bSozNgzRvAlo=";
+    hash = "sha256-K6QPMts5+hxH2a+WQ1N0lwMBoshG2T0bSozNgzRvAlo=";
   };
 
   buildInputs = [ dune-configurator ];
diff --git a/pkgs/development/ocaml-modules/chrome-trace/default.nix b/pkgs/development/ocaml-modules/chrome-trace/default.nix
index fb6c14b3362..9c427d34375 100644
--- a/pkgs/development/ocaml-modules/chrome-trace/default.nix
+++ b/pkgs/development/ocaml-modules/chrome-trace/default.nix
@@ -4,6 +4,7 @@ buildDunePackage rec {
   pname = "chrome-trace";
   inherit (dune_3) src version;
 
+  minimalOCamlVersion = "4.08";
   duneVersion = "3";
 
   dontAddPrefix = true;
diff --git a/pkgs/development/ocaml-modules/irmin/chunk.nix b/pkgs/development/ocaml-modules/irmin/chunk.nix
index 59bd8154494..61a0d6021ab 100644
--- a/pkgs/development/ocaml-modules/irmin/chunk.nix
+++ b/pkgs/development/ocaml-modules/irmin/chunk.nix
@@ -4,6 +4,7 @@ buildDunePackage rec {
 
   pname = "irmin-chunk";
   inherit (irmin) version src strictDeps;
+  duneVersion = "3";
 
   propagatedBuildInputs = [ irmin fmt logs lwt ];
 
diff --git a/pkgs/development/ocaml-modules/irmin/containers.nix b/pkgs/development/ocaml-modules/irmin/containers.nix
index 73cd25f3170..aa003f39b3f 100644
--- a/pkgs/development/ocaml-modules/irmin/containers.nix
+++ b/pkgs/development/ocaml-modules/irmin/containers.nix
@@ -7,6 +7,7 @@ buildDunePackage {
   pname = "irmin-containers";
 
   inherit (ppx_irmin) src version strictDeps;
+  duneVersion = "3";
 
   nativeBuildInputs = [
     ppx_irmin
diff --git a/pkgs/development/ocaml-modules/irmin/default.nix b/pkgs/development/ocaml-modules/irmin/default.nix
index 66b572f576d..485547ddcad 100644
--- a/pkgs/development/ocaml-modules/irmin/default.nix
+++ b/pkgs/development/ocaml-modules/irmin/default.nix
@@ -9,7 +9,8 @@ buildDunePackage {
 
   inherit (ppx_irmin) src version strictDeps;
 
-  minimalOCamlVersion = "4.08";
+  minimalOCamlVersion = "4.10";
+  duneVersion = "3";
 
   propagatedBuildInputs = [
     astring
diff --git a/pkgs/development/ocaml-modules/irmin/fs.nix b/pkgs/development/ocaml-modules/irmin/fs.nix
index 1788cf1eda2..4b8d7c4b97a 100644
--- a/pkgs/development/ocaml-modules/irmin/fs.nix
+++ b/pkgs/development/ocaml-modules/irmin/fs.nix
@@ -7,6 +7,7 @@ buildDunePackage rec {
   pname = "irmin-fs";
 
   inherit (irmin) version src strictDeps;
+  duneVersion = "3";
 
   propagatedBuildInputs = [ irmin astring logs lwt ];
 
diff --git a/pkgs/development/ocaml-modules/irmin/mirage.nix b/pkgs/development/ocaml-modules/irmin/mirage.nix
index 9e4bd933079..2d7d0a89124 100644
--- a/pkgs/development/ocaml-modules/irmin/mirage.nix
+++ b/pkgs/development/ocaml-modules/irmin/mirage.nix
@@ -4,6 +4,7 @@ buildDunePackage {
   pname = "irmin-mirage";
 
   inherit (irmin) version src strictDeps;
+  duneVersion = "3";
 
   propagatedBuildInputs = [
     irmin fmt ptime mirage-clock
diff --git a/pkgs/development/ocaml-modules/irmin/pack.nix b/pkgs/development/ocaml-modules/irmin/pack.nix
index a1a2974a4d7..8c0c7b2a3b0 100644
--- a/pkgs/development/ocaml-modules/irmin/pack.nix
+++ b/pkgs/development/ocaml-modules/irmin/pack.nix
@@ -1,10 +1,11 @@
 { lib, buildDunePackage
-, index, ppx_irmin, irmin, optint, fmt, logs, lwt, mtime, cmdliner
+, index, ppx_irmin, irmin, optint, fmt, logs, lwt, mtime, cmdliner, checkseum, rusage
 , alcotest, alcotest-lwt, astring, irmin-test
 }:
 
 buildDunePackage rec {
-  minimalOCamlVersion = "4.08";
+  minimalOCamlVersion = "4.10";
+  duneVersion = "3";
 
   pname = "irmin-pack";
 
@@ -12,7 +13,7 @@ buildDunePackage rec {
 
   nativeBuildInputs = [ ppx_irmin ];
 
-  propagatedBuildInputs = [ index irmin optint fmt logs lwt mtime cmdliner ];
+  propagatedBuildInputs = [ index irmin optint fmt logs lwt mtime cmdliner checkseum rusage ];
 
   checkInputs = [ astring alcotest alcotest-lwt irmin-test ];
 
diff --git a/pkgs/development/ocaml-modules/irmin/ppx.nix b/pkgs/development/ocaml-modules/irmin/ppx.nix
index 83cd5b1d7f5..4ff7f4a8bdd 100644
--- a/pkgs/development/ocaml-modules/irmin/ppx.nix
+++ b/pkgs/development/ocaml-modules/irmin/ppx.nix
@@ -2,14 +2,15 @@
 
 buildDunePackage rec {
   pname = "ppx_irmin";
-  version = "3.4.1";
+  version = "3.5.1";
 
   src = fetchurl {
     url = "https://github.com/mirage/irmin/releases/download/${version}/irmin-${version}.tbz";
-    sha256 = "sha256-kig2EWww7GgGijhpSgm7pSHPR+3Q5K5E4Ha5tJY9oYA=";
+    hash = "sha256-zXiKjT9KPdGNwWChU9SuyR6vaw+0GtQUZNJsecMEqY4=";
   };
 
   minimalOCamlVersion = "4.10";
+  duneVersion = "3";
 
   propagatedBuildInputs = [
     ppx_repr
diff --git a/pkgs/development/ocaml-modules/irmin/test.nix b/pkgs/development/ocaml-modules/irmin/test.nix
index 942200bf429..4e2ccce7166 100644
--- a/pkgs/development/ocaml-modules/irmin/test.nix
+++ b/pkgs/development/ocaml-modules/irmin/test.nix
@@ -8,6 +8,7 @@ buildDunePackage {
   pname = "irmin-test";
 
   inherit (irmin) version src strictDeps;
+  duneVersion = "3";
 
   nativeBuildInputs = [ ppx_irmin ];
 
diff --git a/pkgs/development/ocaml-modules/irmin/tezos.nix b/pkgs/development/ocaml-modules/irmin/tezos.nix
index 82a89daec35..ddfc0d07320 100644
--- a/pkgs/development/ocaml-modules/irmin/tezos.nix
+++ b/pkgs/development/ocaml-modules/irmin/tezos.nix
@@ -7,6 +7,7 @@ buildDunePackage rec {
   pname = "irmin-tezos";
 
   inherit (irmin) version src strictDeps;
+  duneVersion = "3";
 
   propagatedBuildInputs = [
     irmin
diff --git a/pkgs/development/ocaml-modules/ordering/default.nix b/pkgs/development/ocaml-modules/ordering/default.nix
index c3bffc013f9..8613ccf9ae0 100644
--- a/pkgs/development/ocaml-modules/ordering/default.nix
+++ b/pkgs/development/ocaml-modules/ordering/default.nix
@@ -4,6 +4,7 @@ buildDunePackage {
   pname = "ordering";
   inherit (dune_3) version src;
   duneVersion = "3";
+  minimalOCamlVersion = "4.08";
 
   dontAddPrefix = true;
 
diff --git a/pkgs/development/ocaml-modules/rusage/default.nix b/pkgs/development/ocaml-modules/rusage/default.nix
new file mode 100644
index 00000000000..891784ba6de
--- /dev/null
+++ b/pkgs/development/ocaml-modules/rusage/default.nix
@@ -0,0 +1,20 @@
+{ lib, fetchurl, buildDunePackage }:
+
+buildDunePackage rec {
+  pname = "rusage";
+  version = "1.0.0";
+
+  duneVersion = "3";
+
+  src = fetchurl {
+    url = "https://github.com/CraigFe/ocaml-rusage/releases/download/${version}/rusage-${version}.tbz";
+    hash = "sha256-OgYA2Fe1goqoaOS45Z6FBJNNYN/uq+KQoUwG8KSo6Fk=";
+  };
+
+  meta = {
+    description = "Bindings to the GETRUSAGE(2) syscall";
+    homepage = "https://github.com/CraigFe/ocaml-rusage";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.vbgl ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/sqlite3/default.nix b/pkgs/development/ocaml-modules/sqlite3/default.nix
index f20a6cff0a8..cfd03493d3a 100644
--- a/pkgs/development/ocaml-modules/sqlite3/default.nix
+++ b/pkgs/development/ocaml-modules/sqlite3/default.nix
@@ -3,12 +3,12 @@
 buildDunePackage rec {
   pname = "sqlite3";
   version = "5.1.0";
-  useDune2 = true;
-  minimumOCamlVersion = "4.05";
+  duneVersion = "3";
+  minimalOCamlVersion = "4.12";
 
   src = fetchurl {
     url = "https://github.com/mmottl/sqlite3-ocaml/releases/download/${version}/sqlite3-${version}.tbz";
-    sha256 = "sha256-uw23EWkajfok/insTstpEkRK2Q4PTER6+Jgx5tHf/qU=";
+    hash = "sha256-uw23EWkajfok/insTstpEkRK2Q4PTER6+Jgx5tHf/qU=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/development/ocaml-modules/xdg/default.nix b/pkgs/development/ocaml-modules/xdg/default.nix
index 8d3810fa7e9..52543175e07 100644
--- a/pkgs/development/ocaml-modules/xdg/default.nix
+++ b/pkgs/development/ocaml-modules/xdg/default.nix
@@ -5,6 +5,7 @@ buildDunePackage rec {
   inherit (dune_3) src version;
 
   duneVersion = "3";
+  minimalOCamlVersion = "4.08";
 
   dontAddPrefix = true;
 
diff --git a/pkgs/development/perl-modules/ham/default.nix b/pkgs/development/perl-modules/ham/default.nix
index 2fc4b3c3b43..8005322cff7 100644
--- a/pkgs/development/perl-modules/ham/default.nix
+++ b/pkgs/development/perl-modules/ham/default.nix
@@ -1,14 +1,22 @@
-{ lib, buildPerlPackage, fetchFromGitHub, makeWrapper, openssh, GitRepository, URI, XMLMini }:
+{ lib
+, buildPerlPackage
+, fetchFromGitHub
+, makeWrapper
+, openssh
+, GitRepository
+, URI
+, XMLMini
+}:
 
 buildPerlPackage {
   pname = "ham-unstable";
-  version = "2020-09-09";
+  version = "2022-10-26";
 
   src = fetchFromGitHub {
     owner = "kernkonzept";
     repo = "ham";
-    rev = "ae2a326f2efcdae0fa7c5bf0ba205b580fc91ecc";
-    sha256 = "0m65pav2830y0ivwsy60dc4w457qlc0nqg43lji1kj2g96hmy2bw";
+    rev = "f2f10516177d00a79fe81701351632df2544ba4e";
+    hash = "sha256-cxlZh1x8ycpZIwSeOwqB6BtwYaMoWtSPaeiyW41epdk=";
   };
 
   outputs = [ "out" ];
@@ -32,12 +40,12 @@ buildPerlPackage {
 
   doCheck = false;
 
-  meta = {
+  meta = with lib; {
     description = "A tool to manage big projects consisting of multiple loosely-coupled git repositories";
     homepage = "https://github.com/kernkonzept/ham";
-    license = "unknown"; # should be gpl2, but not quite sure
-    maintainers = with lib.maintainers; [ aw ];
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ aw ];
     mainProgram = "ham";
-    platforms = lib.platforms.unix;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/python-modules/aiodocker/default.nix b/pkgs/development/python-modules/aiodocker/default.nix
new file mode 100644
index 00000000000..b6cc55d7fd8
--- /dev/null
+++ b/pkgs/development/python-modules/aiodocker/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, aiohttp
+}:
+
+buildPythonPackage rec {
+  pname = "aiodocker";
+  # unstable includes support for python 3.10+
+  version = "unstable-2022-01-20";
+
+  src = fetchFromGitHub {
+    owner = "aio-libs";
+    repo = pname;
+    rev = "f1dbdc3d42147f4c2ab5e6802acf6f7d0f885be4";
+    sha256 = "RL5Ck4wsBZO88afmoojeFKbdIeCjDo/SwNqUcERH6Ls=";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+  ];
+
+  # tests require docker daemon
+  doCheck = false;
+  pythonImportsCheck = [ "aiodocker" ];
+
+  meta = with lib; {
+    description = "Docker API client for asyncio";
+    homepage = "https://github.com/aio-libs/aiodocker";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ emilytrau ];
+  };
+}
diff --git a/pkgs/development/python-modules/arcam-fmj/default.nix b/pkgs/development/python-modules/arcam-fmj/default.nix
index c4412653779..1169e1ca341 100644
--- a/pkgs/development/python-modules/arcam-fmj/default.nix
+++ b/pkgs/development/python-modules/arcam-fmj/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "arcam-fmj";
-  version = "1.1.0";
+  version = "1.2.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "elupus";
     repo = "arcam_fmj";
     rev = "refs/tags/${version}";
-    hash = "sha256-oXMoDpb4tg4iYAanTfPzeFp/IQl4bIELCTdM24hM84A=";
+    hash = "sha256-stoxDb25K/h55rwR0faWO0AOjSJmjZNbMbOAuUE2iSM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/bluemaestro-ble/default.nix b/pkgs/development/python-modules/bluemaestro-ble/default.nix
index 11edb88848b..d6eb12166a8 100644
--- a/pkgs/development/python-modules/bluemaestro-ble/default.nix
+++ b/pkgs/development/python-modules/bluemaestro-ble/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "bluemaestro-ble";
-  version = "0.2.1";
+  version = "0.2.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-QGad5o9JZ6ansVh3bRBO+9mE4PKw05acY+9+Ur2OBsY=";
+    hash = "sha256-mJ5JNGN4F9U3WMJQDwiZwuxE0zOirwo1sWF3/bVwXhY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/bluetooth-sensor-state-data/default.nix b/pkgs/development/python-modules/bluetooth-sensor-state-data/default.nix
index 21bdad355c0..65a5fc6444e 100644
--- a/pkgs/development/python-modules/bluetooth-sensor-state-data/default.nix
+++ b/pkgs/development/python-modules/bluetooth-sensor-state-data/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "bluetooth-sensor-state-data";
-  version = "1.6.0";
+  version = "1.6.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-Btfya9l1UX7GbiUxuaFHT0l+pG+Dg5X0L2JS+1/VYOo=";
+    hash = "sha256-3qZlk6zV/AeFG4OSRONQ7EMw9Kk/yHjVHV2o64bxCGM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/deepdiff/default.nix b/pkgs/development/python-modules/deepdiff/default.nix
index b4921b2d1f4..f5ea937a4f1 100644
--- a/pkgs/development/python-modules/deepdiff/default.nix
+++ b/pkgs/development/python-modules/deepdiff/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , click
 , ordered-set
+, orjson
 , clevercsv
 , jsonpickle
 , numpy
@@ -14,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "deepdiff";
-  version = "6.2.1";
+  version = "6.2.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -23,7 +24,7 @@ buildPythonPackage rec {
     owner = "seperman";
     repo = "deepdiff";
     rev = "refs/tags/${version}";
-    hash = "sha256-AKah3A9srKm/cFWM7IiZ7JxQ8s0KTuh8VLKOymsDgnA=";
+    hash = "sha256-rlMksUi+R48fIEjVv2E3yOETDezTghZ8+Zsypu8fAnQ=";
   };
 
   postPatch = ''
@@ -33,6 +34,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     ordered-set
+    orjson
   ];
 
   passthru.optional-dependencies = {
diff --git a/pkgs/development/python-modules/desktop-notifier/default.nix b/pkgs/development/python-modules/desktop-notifier/default.nix
index 840fbda9231..29e5f915ccc 100644
--- a/pkgs/development/python-modules/desktop-notifier/default.nix
+++ b/pkgs/development/python-modules/desktop-notifier/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "desktop-notifier";
-  version = "3.4.2";
+  version = "3.4.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "SamSchott";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-OujBpq3SBDKw9Jgb9MD200Rp0fD0OJRw90flxS22I2s=";
+    hash = "sha256-V5CggWp9G0/XoQhArrY3LCvfkF2SymORDWdJGjsr7yI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/django-rq/default.nix b/pkgs/development/python-modules/django-rq/default.nix
index d0894177c3f..a0bfca2a8b2 100644
--- a/pkgs/development/python-modules/django-rq/default.nix
+++ b/pkgs/development/python-modules/django-rq/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "django-rq";
-  version = "2.6.0";
+  version = "2.7.0";
   format = "setuptools";
   disabled = isPy27;
 
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "rq";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-Na/GeQc74LCoi7Dp3HcSnmUaLi1EjyYYgZTcFyzqOQM=";
+    hash = "sha256-MUIwgG8GKL+V5GgiC7gZXn5tlSVrmTj/IFiP+hVB7Ks=";
   };
 
   propagatedBuildInputs = [
@@ -37,6 +37,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Simple app that provides django integration for RQ (Redis Queue)";
     homepage = "https://github.com/rq/django-rq";
+    changelog = "https://github.com/rq/django-rq/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ hexa ];
   };
diff --git a/pkgs/development/python-modules/django_treebeard/default.nix b/pkgs/development/python-modules/django_treebeard/default.nix
index 2728d77d3f8..dd6e054b55c 100644
--- a/pkgs/development/python-modules/django_treebeard/default.nix
+++ b/pkgs/development/python-modules/django_treebeard/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "django-treebeard";
-  version = "4.6.0";
+  version = "4.6.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-frHrcbJCFPLn3DvSFfDDrjL9Z2QXnNR3SveqtJE53qA=";
+    hash = "sha256-hKs1BAJ31STrd5OeI1VoychWy1I8yWVXk7Zv6aPvRos=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/elementpath/default.nix b/pkgs/development/python-modules/elementpath/default.nix
index 0aa5c658378..14876fa30d3 100644
--- a/pkgs/development/python-modules/elementpath/default.nix
+++ b/pkgs/development/python-modules/elementpath/default.nix
@@ -6,7 +6,7 @@
 
 buildPythonPackage rec {
   pname = "elementpath";
-  version = "3.0.2";
+  version = "4.0.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     owner = "sissaschool";
     repo = "elementpath";
     rev = "refs/tags/v${version}";
-    hash = "sha256-b+Th28GI2UOmfO4jy4biohAJWPiYWkvFLqqs9lgR4Vc=";
+    hash = "sha256-BEnSPRuQUnKXtPAJfjxS+fwE0rpPj1U2yRK8eImKMYw=";
   };
 
   # avoid circular dependency with xmlschema which directly depends on this
diff --git a/pkgs/development/python-modules/goodwe/default.nix b/pkgs/development/python-modules/goodwe/default.nix
index 31d7127519e..6d3875d3789 100644
--- a/pkgs/development/python-modules/goodwe/default.nix
+++ b/pkgs/development/python-modules/goodwe/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "goodwe";
-  version = "0.2.23";
+  version = "0.2.24";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "marcelblijleven";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-SX49v+DuV4IZdTJc9XhqhgtG81qLC9QnR/LPMu2m0fo=";
+    sha256 = "sha256-dcz9IEPr5n86NHne9lEDB0kERY8o+jUEqPmz6QMEF4Q=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/greeclimate/default.nix b/pkgs/development/python-modules/greeclimate/default.nix
index 0cdf472be09..30a724c07c4 100644
--- a/pkgs/development/python-modules/greeclimate/default.nix
+++ b/pkgs/development/python-modules/greeclimate/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "greeclimate";
-  version = "1.4.0";
+  version = "1.4.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "cmroche";
     repo = "greeclimate";
     rev = "refs/tags/v${version}";
-    hash = "sha256-UBkfe4d+K+730TbvModZF1ET7uxMpQGxOkq0PF/WiWc=";
+    hash = "sha256-M4oxFi/PpqhJgZX/wM+9rSrraIZcqzubbxnihfK0W2E=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/lupupy/default.nix b/pkgs/development/python-modules/lupupy/default.nix
index 9f2e31fbc7d..cab862b20c3 100644
--- a/pkgs/development/python-modules/lupupy/default.nix
+++ b/pkgs/development/python-modules/lupupy/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "lupupy";
-  version = "0.2.5";
+  version = "0.2.7";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-SxhGUwcZjaRNCS5dB2hh5uctFGHWuKnM48CcIz6VMh8=";
+    hash = "sha256-nSa/qFJUnk1QTwUqq2il0RWCPdF4Jwby9NPIwAwcVds=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/meilisearch/default.nix b/pkgs/development/python-modules/meilisearch/default.nix
index f418cfbe9f0..60f2d7329d1 100644
--- a/pkgs/development/python-modules/meilisearch/default.nix
+++ b/pkgs/development/python-modules/meilisearch/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "meilisearch";
-  version = "0.23.0";
+  version = "0.24.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "meilisearch";
     repo = "meilisearch-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-7TiXyuB2veNJtK6UmQg01O82r549aRmEa/DFzJtnQug=";
+    hash = "sha256-u7LQjc1N4JS9bAFaa9SnljgnldkcgK1bsjKakG0zQ2E=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/ome-zarr/default.nix b/pkgs/development/python-modules/ome-zarr/default.nix
new file mode 100644
index 00000000000..b5be85bf115
--- /dev/null
+++ b/pkgs/development/python-modules/ome-zarr/default.nix
@@ -0,0 +1,81 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, fetchpatch
+, pytestCheckHook
+, aiohttp
+, dask
+, fsspec
+, numpy
+, requests
+, scikitimage
+, s3fs
+, toolz
+, zarr
+}:
+
+buildPythonPackage rec {
+  pname = "ome-zarr";
+  version = "0.6.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "ome";
+    repo = "ome-zarr-py";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-dpweOuqruh7mAqmSaNbehLCr8OCLe1IZNWV4bpHpTl0=";
+  };
+
+  patches = [
+    # remove after next release:
+    (fetchpatch {
+      name = "fix-writer-bug";
+      url = "https://github.com/ome/ome-zarr-py/commit/c1302e05998dfe2faf94b0f958c92888681f5ffa.patch";
+      hash = "sha256-1WANObABUXkjqeGdnmg0qJ48RcZcuAwgitZyMwiRYUw=";
+    })
+  ];
+
+  propagatedBuildInputs = [
+    numpy
+    dask
+    zarr
+    fsspec
+    aiohttp
+    requests
+    s3fs
+    scikitimage
+    toolz
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    # attempts to access network
+    "test_s3_info"
+  ];
+
+  pythonImportsCheck = [
+    "ome_zarr"
+    "ome_zarr.cli"
+    "ome_zarr.csv"
+    "ome_zarr.data"
+    "ome_zarr.format"
+    "ome_zarr.io"
+    "ome_zarr.reader"
+    "ome_zarr.writer"
+    "ome_zarr.scale"
+    "ome_zarr.utils"
+  ];
+
+  meta = with lib; {
+    description = "Implementation of next-generation file format (NGFF) specifications for storing bioimaging data in the cloud.";
+    homepage = "https://pypi.org/project/ome-zarr";
+    changelog = "https://github.com/ome/ome-zarr-py/blob/v${version}/CHANGELOG.md";
+    license = licenses.bsd2;
+    maintainers = [ maintainers.bcdarwin ];
+    mainProgram = "ome_zarr";
+  };
+}
diff --git a/pkgs/development/python-modules/oralb-ble/default.nix b/pkgs/development/python-modules/oralb-ble/default.nix
index 743fdd82f60..c0f2840763e 100644
--- a/pkgs/development/python-modules/oralb-ble/default.nix
+++ b/pkgs/development/python-modules/oralb-ble/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "oralb-ble";
-  version = "0.17.2";
+  version = "0.17.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-v2c1FoLgG6HH02d+YBr4Qh12ztRsiwWyueUNOBpWqPM=";
+    hash = "sha256-KvvcyeYXBtV/sUKMv+1xoXH9ALUX46EWS/STFZkCnUQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pikepdf/default.nix b/pkgs/development/python-modules/pikepdf/default.nix
index 89a51051d69..c720ea4dbcb 100644
--- a/pkgs/development/python-modules/pikepdf/default.nix
+++ b/pkgs/development/python-modules/pikepdf/default.nix
@@ -18,16 +18,18 @@
 , python-dateutil
 , python-xmp-toolkit
 , qpdf
+, setuptools
 , setuptools-scm
 , substituteAll
+, wheel
 }:
 
 buildPythonPackage rec {
   pname = "pikepdf";
-  version = "6.2.9";
-  format = "setuptools";
+  version = "7.0.0";
+  format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "pikepdf";
@@ -39,7 +41,7 @@ buildPythonPackage rec {
     postFetch = ''
       rm "$out/.git_archival.txt"
     '';
-    hash = "sha256-Obsg5fsTv/7uiFRbzGp90+d90e2dX7CWMMRMgiQvNyc=";
+    hash = "sha256-sJVAiAQtJ8tU8ZHRU5jzIICnHc6RJwMsvxexnt7b4Yw=";
   };
 
   patches = [
@@ -58,12 +60,14 @@ buildPythonPackage rec {
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
 
   buildInputs = [
-    pybind11
     qpdf
   ];
 
   nativeBuildInputs = [
+    pybind11
+    setuptools
     setuptools-scm
+    wheel
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/pydeps/default.nix b/pkgs/development/python-modules/pydeps/default.nix
index ef5339086f6..aefb4cc43f5 100644
--- a/pkgs/development/python-modules/pydeps/default.nix
+++ b/pkgs/development/python-modules/pydeps/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "pydeps";
-  version = "1.11.0";
+  version = "1.11.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "thebjorn";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-XAx7B3v+7xYiW15nJgiL82YlNeBxW80M0Rq0LMMsWu0=";
+    hash = "sha256-nFdt68QhpX1URLEQtdikR11KFK9E9Y+cTvJQn4/YZlI=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/python-modules/pymemcache/default.nix b/pkgs/development/python-modules/pymemcache/default.nix
index cf69c2b0fa3..68925fe7f4a 100644
--- a/pkgs/development/python-modules/pymemcache/default.nix
+++ b/pkgs/development/python-modules/pymemcache/default.nix
@@ -42,6 +42,11 @@ buildPythonPackage rec {
   disabledTests = [
     # python-memcached is not available (last release in 2017)
     "TestClientSocketConnect"
+  ] ++ lib.optionals stdenv.is32bit [
+    # test_compressed_complex is broken on 32-bit platforms
+    # this can be removed on the next version bump
+    # see also https://github.com/pinterest/pymemcache/pull/480
+    "test_compressed_complex"
   ];
 
   pythonImportsCheck = [
@@ -53,6 +58,5 @@ buildPythonPackage rec {
     homepage = "https://pymemcache.readthedocs.io/";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ fab ];
-    broken = stdenv.is32bit;
   };
 }
diff --git a/pkgs/development/python-modules/python-gvm/default.nix b/pkgs/development/python-modules/python-gvm/default.nix
index 5210bc79e72..4310b767aad 100644
--- a/pkgs/development/python-modules/python-gvm/default.nix
+++ b/pkgs/development/python-modules/python-gvm/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "python-gvm";
-  version = "22.9.1";
+  version = "23.2.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "greenbone";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-V9xfPYwDDoCGJPstzYsC/ikUp45uiaZE0Bg4i9tRNhU=";
+    sha256 = "sha256-6EmmiJjadC6zJM4+HhL8w2Xw1p7pG5LI0TS53bH61Tc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/schwifty/default.nix b/pkgs/development/python-modules/schwifty/default.nix
index 93dc48affc8..38fffa4ba88 100644
--- a/pkgs/development/python-modules/schwifty/default.nix
+++ b/pkgs/development/python-modules/schwifty/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "schwifty";
-  version = "2022.9.0";
+  version = "2023.2.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-/zxK0pUfg5G5w9E+QBt1H12Ld5gWc+WakQdNVRMSFiA=";
+    sha256 = "sha256-YEBBrU+Xcl5zFPEt/EvPD5eFPUYSpGJ3ZoIK6PRVwlc=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/sensorpro-ble/default.nix b/pkgs/development/python-modules/sensorpro-ble/default.nix
index 3e9793d0974..df3be2b3fe4 100644
--- a/pkgs/development/python-modules/sensorpro-ble/default.nix
+++ b/pkgs/development/python-modules/sensorpro-ble/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "sensorpro-ble";
-  version = "0.5.1";
+  version = "0.5.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-D0xHNPsGlNBoHR3LqR6TbVhqXWapzwYsG+uN3kSF1oE=";
+    hash = "sha256-Zqa6qa0Jw79Iu4VEw6KN0GsZcC1X7OpiYUiyT4zwKyY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/sensorpush-ble/default.nix b/pkgs/development/python-modules/sensorpush-ble/default.nix
index 3567b178bb9..d51f6d7d644 100644
--- a/pkgs/development/python-modules/sensorpush-ble/default.nix
+++ b/pkgs/development/python-modules/sensorpush-ble/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "sensorpush-ble";
-  version = "1.5.2";
+  version = "1.5.5";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -19,8 +19,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "Bluetooth-Devices";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-64DywtZwfDFjW8WUzw3ZTT462sBGFgAHGc0bGnKCJpY=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-17Yzpbcy/r+GlkLktgghehfAEboZHMbB/Dze1no4I80=";
   };
 
   nativeBuildInputs = [
@@ -49,6 +49,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Library for SensorPush BLE devices";
     homepage = "https://github.com/Bluetooth-Devices/sensorpush-ble";
+    changelog = "https://github.com/Bluetooth-Devices/sensorpush-ble/releases/tag/v${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/sentence-transformers/default.nix b/pkgs/development/python-modules/sentence-transformers/default.nix
new file mode 100644
index 00000000000..4554b36d120
--- /dev/null
+++ b/pkgs/development/python-modules/sentence-transformers/default.nix
@@ -0,0 +1,53 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, huggingface-hub
+, nltk
+, numpy
+, scikit-learn
+, scipy
+, sentencepiece
+, tokenizers
+, torch
+, torchvision
+, tqdm
+, transformers
+}:
+
+buildPythonPackage rec {
+  pname = "sentence-transformers";
+  version = "2.2.2";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "UKPLab";
+    repo = "sentence-transformers";
+    rev = "v${version}";
+    hash = "sha256-hEYpDAL0lliaS1j+c5vaZ0q1hw802jfTUurx/FvgY9w=";
+  };
+
+  propagatedBuildInputs = [
+    huggingface-hub
+    nltk
+    numpy
+    scikit-learn
+    scipy
+    sentencepiece
+    tokenizers
+    torch
+    torchvision
+    tqdm
+    transformers
+  ];
+
+  pythonImportsCheck = [ "sentence_transformers" ];
+
+  doCheck = false; # tests fail at build_ext
+
+  meta = with lib; {
+    description = "Multilingual Sentence & Image Embeddings with BERT";
+    homepage = "https://github.com/UKPLab/sentence-transformers";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ dit7ya ];
+  };
+}
diff --git a/pkgs/development/python-modules/soundfile/default.nix b/pkgs/development/python-modules/soundfile/default.nix
index 4bbf606ff52..5847dc2a63f 100644
--- a/pkgs/development/python-modules/soundfile/default.nix
+++ b/pkgs/development/python-modules/soundfile/default.nix
@@ -12,24 +12,15 @@
 
 buildPythonPackage rec {
   pname = "soundfile";
-  version = "0.10.3.post1";
+  version = "0.11.0";
   # https://github.com/bastibe/python-soundfile/issues/157
   disabled = isPyPy || stdenv.isi686;
 
   src = fetchPypi {
-    pname = "SoundFile";
-    inherit version;
-    sha256 = "0yqhrfz7xkvqrwdxdx2ydy4h467sk7z3gf984y1x2cq7cm1gy329";
+    inherit pname version;
+    sha256 = "sha256-kxc4ock+hoTC0+HVFKxjRAzoJ+x4PqCi0+RzDj3FjBg=";
   };
 
-  patches = [
-    # Fix build on macOS arm64, https://github.com/bastibe/python-soundfile/pull/332
-    (fetchpatch {
-      url = "https://github.com/bastibe/python-soundfile/commit/e554e9ce8bed96207d587e6aa661e4b08f1c6a79.patch";
-      sha256 = "sha256-vu/7s5q4I3yBnoNHmmFmcXvOLFcPwY9ri9ri6cKLDwU=";
-    })
-  ];
-
   postPatch = ''
     substituteInPlace soundfile.py --replace "_find_library('sndfile')" "'${libsndfile.out}/lib/libsndfile${stdenv.hostPlatform.extensions.sharedLibrary}'"
   '';
@@ -38,10 +29,6 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ numpy libsndfile cffi ];
   propagatedNativeBuildInputs = [ cffi ];
 
-  # Test fails on aarch64-darwin with `MemoryError`, 53 failed, 31 errors, see
-  # https://github.com/bastibe/python-soundfile/issues/331
-  doCheck = stdenv.system != "aarch64-darwin";
-
   meta = {
     description = "An audio library based on libsndfile, CFFI and NumPy";
     license = lib.licenses.bsd3;
diff --git a/pkgs/development/python-modules/thermopro-ble/default.nix b/pkgs/development/python-modules/thermopro-ble/default.nix
index ee2a4fb2e75..ad934e71e36 100644
--- a/pkgs/development/python-modules/thermopro-ble/default.nix
+++ b/pkgs/development/python-modules/thermopro-ble/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "thermopro-ble";
-  version = "0.4.3";
+  version = "0.4.5";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "bluetooth-devices";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-y8Uh1REZqfrS3Y/L/uCmHYkdPQzwzdx7eSz003oz05o=";
+    hash = "sha256-z3RrPOV7NGl3aNor+baeVivn+DKwYHcrdlM5sNMGVD0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/tilt-ble/default.nix b/pkgs/development/python-modules/tilt-ble/default.nix
index c4164ce0700..1be167f9a88 100644
--- a/pkgs/development/python-modules/tilt-ble/default.nix
+++ b/pkgs/development/python-modules/tilt-ble/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "tilt-ble";
-  version = "0.2.3";
+  version = "0.2.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -19,8 +19,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "Bluetooth-Devices";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-PR+BA0wUljUeUYCTRMKxkG+kj6PfklksbO/k9L7sWdE=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-ok9XWx47hcke535480NORfS1pSagaOJvMR48lYTa/Tg=";
   };
 
   nativeBuildInputs = [
@@ -49,6 +49,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Library for Tilt BLE devices";
     homepage = "https://github.com/Bluetooth-Devices/tilt-ble";
+    changelog = "https://github.com/Bluetooth-Devices/tilt-ble/releases/tag/v${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/types-colorama/default.nix b/pkgs/development/python-modules/types-colorama/default.nix
index 155b18f0284..0a059b252b5 100644
--- a/pkgs/development/python-modules/types-colorama/default.nix
+++ b/pkgs/development/python-modules/types-colorama/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-colorama";
-  version = "0.4.15.5";
+  version = "0.4.15.7";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-PSqJbsfz0fZpz3ruoO9+usRznwLbM6sTKB5qcewvwsU=";
+    hash = "sha256-2oToq+lcLhGtKyi6VXq45dyAhjvW+HOefBkWyVB1WvQ=";
   };
 
   # Module has no tests
diff --git a/pkgs/development/python-modules/types-docutils/default.nix b/pkgs/development/python-modules/types-docutils/default.nix
index 31906b220af..33e80f48952 100644
--- a/pkgs/development/python-modules/types-docutils/default.nix
+++ b/pkgs/development/python-modules/types-docutils/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-docutils";
-  version = "0.19.1.2";
+  version = "0.19.1.3";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-yj0hNUhK21LdBCu929bt3LvajGCLo/Xl+Qi9VI/8s5k=";
+    hash = "sha256-Nv4w3lbx7OGp96mQ1H2qeBta+DHSs/Lct9/QG4V8w9Q=";
   };
 
   # Module doesn't have tests
diff --git a/pkgs/development/python-modules/types-requests/default.nix b/pkgs/development/python-modules/types-requests/default.nix
index 274e69ca776..a6d685a5371 100644
--- a/pkgs/development/python-modules/types-requests/default.nix
+++ b/pkgs/development/python-modules/types-requests/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-requests";
-  version = "2.28.11.8";
+  version = "2.28.11.11";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-5nQkUl+ErfvqtyaKFZ08Yzhi2vrhXFsZVHzhtVlU8KM=";
+    sha256 = "sha256-GWIqzjWl2hg47pytDfSlDH46Qg+KN+g1fOhw/tSS+oE=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/types-urllib3/default.nix b/pkgs/development/python-modules/types-urllib3/default.nix
index 55ab0f9ee1e..8b16993877b 100644
--- a/pkgs/development/python-modules/types-urllib3/default.nix
+++ b/pkgs/development/python-modules/types-urllib3/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-urllib3";
-  version = "1.26.25.4";
+  version = "1.26.25.5";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-7sVVZCjuyGKxrFePtpqrOHeZWpn/7J5aEs9/vQzJ2u4=";
+    hash = "sha256-VjDleCRtFw2R6+OQF4jNKNU8TgRNwuJIjjsNVftoldg=";
   };
 
   # Module doesn't have tests
diff --git a/pkgs/development/python-modules/volvooncall/default.nix b/pkgs/development/python-modules/volvooncall/default.nix
index f3df712c3d5..133c9401a29 100644
--- a/pkgs/development/python-modules/volvooncall/default.nix
+++ b/pkgs/development/python-modules/volvooncall/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "volvooncall";
-  version = "0.10.1";
+  version = "0.10.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "molobrakos";
     repo = "volvooncall";
     rev = "refs/tags/v${version}";
-    hash = "sha256-udYvgKj7Rlc/hA86bbeBfnoVRjKkXT4TwpceWz226cU=";
+    hash = "sha256-/BMwDuo4xE/XOLM8qzJwt0A0h0+ihbCVCxT3BBToiVU=";
   };
 
   patches = [
@@ -67,7 +67,6 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Retrieve information from the Volvo On Call web service";
     homepage = "https://github.com/molobrakos/volvooncall";
-    changelog = "https://github.com/molobrakos/volvooncall/releases/tag/v${version}";
     license = licenses.unlicense;
     maintainers = with maintainers; [ dotlambda ];
   };
diff --git a/pkgs/development/python-modules/xiaomi-ble/default.nix b/pkgs/development/python-modules/xiaomi-ble/default.nix
index c868801e2d4..7815a36396b 100644
--- a/pkgs/development/python-modules/xiaomi-ble/default.nix
+++ b/pkgs/development/python-modules/xiaomi-ble/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "xiaomi-ble";
-  version = "0.15.0";
+  version = "0.16.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-6j5hZ9NGmAFpbgYTyC4UuI4XkQwotZND1UMHnmJHCdo=";
+    hash = "sha256-JsrOt6LmmhJZ4MBwLVKKt3IMbvAnxJx70AZROhb9gbc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/xmlschema/default.nix b/pkgs/development/python-modules/xmlschema/default.nix
index cfec72b9683..00df9fc517c 100644
--- a/pkgs/development/python-modules/xmlschema/default.nix
+++ b/pkgs/development/python-modules/xmlschema/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , elementpath
+, jinja2
 , lxml
 , pytestCheckHook
 , pythonOlder
@@ -9,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "xmlschema";
-  version = "2.1.1";
+  version = "2.2.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -18,7 +19,7 @@ buildPythonPackage rec {
     owner = "sissaschool";
     repo = "xmlschema";
     rev = "refs/tags/v${version}";
-    hash = "sha256-rt7QScg458ezDwktO1QRydmC3XqedX+kPpv6J+JvLzQ=";
+    hash = "sha256-KK1F8OVK+19ZWwu+2UtTMiVNyPPoPOv3V1qJFZAu2h4=";
   };
 
   propagatedBuildInputs = [
@@ -26,28 +27,17 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
+    jinja2
     lxml
     pytestCheckHook
   ];
 
-  # Ignore broken fixtures, and tests for files which don't exist.
-  # For darwin, we need to explicity say we can't reach network
-  disabledTests = [
-    "export_remote"
-    "element_tree_import_script"
-  ];
-
-  disabledTestPaths = [
-    "tests/test_schemas.py"
-    "tests/test_memory.py"
-    "tests/test_validation.py"
-  ];
-
   pythonImportsCheck = [
     "xmlschema"
   ];
 
   meta = with lib; {
+    changelog = "https://github.com/sissaschool/xmlschema/blob/${src.rev}/CHANGELOG.rst";
     description = "XML Schema validator and data conversion library for Python";
     homepage = "https://github.com/sissaschool/xmlschema";
     license = licenses.mit;
diff --git a/pkgs/development/r-modules/default.nix b/pkgs/development/r-modules/default.nix
index a01c053f2ee..1d61428960a 100644
--- a/pkgs/development/r-modules/default.nix
+++ b/pkgs/development/r-modules/default.nix
@@ -325,7 +325,6 @@ let
     Cardinal = [ pkgs.which ];
     chebpol = [ pkgs.fftw.dev ];
     ChemmineOB = with pkgs; [ openbabel pkg-config ];
-    classInt = lib.optional stdenv.isDarwin [ pkgs.libiconv ];
     curl = [ pkgs.curl.dev ];
     data_table = [ pkgs.zlib.dev ] ++ lib.optional stdenv.isDarwin pkgs.llvmPackages.openmp;
     devEMF = with pkgs; [ xorg.libXft.dev ];
@@ -344,7 +343,7 @@ let
     graphscan = [ pkgs.gsl ];
     gsl = [ pkgs.gsl ];
     gert = [ pkgs.libgit2 ];
-    haven = with pkgs; [ libiconv zlib.dev ];
+    haven = with pkgs; [ zlib.dev ];
     h5vc = [ pkgs.zlib.dev ];
     HiCseg = [ pkgs.gsl ];
     imager = [ pkgs.xorg.libX11.dev ];
@@ -362,8 +361,9 @@ let
     mvabund = [ pkgs.gsl ];
     mwaved = [ pkgs.fftw.dev ];
     mzR = with pkgs; [ zlib netcdf ];
+    nanonext = with pkgs; [ mbedtls nng ];
     ncdf4 = [ pkgs.netcdf ];
-    nloptr = with pkgs; [ nlopt pkg-config libiconv ];
+    nloptr = with pkgs; [ nlopt pkg-config ];
     n1qn1 = [ pkgs.gfortran ];
     odbc = [ pkgs.unixODBC ];
     pander = with pkgs; [ pandoc which ];
@@ -379,7 +379,6 @@ let
     RAppArmor = [ pkgs.libapparmor ];
     rapportools = [ pkgs.which ];
     rapport = [ pkgs.which ];
-    readxl = [ pkgs.libiconv ];
     rcdd = [ pkgs.gmp.dev ];
     RcppCNPy = [ pkgs.zlib.dev ];
     RcppGSL = [ pkgs.gsl ];
@@ -499,15 +498,6 @@ let
 
   packagesWithBuildInputs = {
     # sort -t '=' -k 2
-    deldir = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
-    gam = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
-    interp = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
-    RcppArmadillo = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
-    quantreg = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
-    rmutil = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
-    robustbase = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
-    SparseM = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
-    hexbin = lib.optionals stdenv.isDarwin [ pkgs.libiconv ];
     svKomodo = [ pkgs.which ];
     nat = [ pkgs.which ];
     nat_templatebrains = [ pkgs.which ];
@@ -516,7 +506,6 @@ let
     clustermq = [  pkgs.pkg-config ];
     RMark = [ pkgs.which ];
     RPushbullet = [ pkgs.which ];
-    RcppEigen = [ pkgs.libiconv ];
     RCurl = [ pkgs.curl.dev ];
     R2SWF = [ pkgs.pkg-config ];
     rgl = with pkgs; [ libGLU libGLU.dev libGL xorg.libX11.dev freetype.dev libpng.dev ];
@@ -555,25 +544,6 @@ let
     tikzDevice = with pkgs; [ which texlive.combined.scheme-medium ];
     gridGraphics = [ pkgs.which ];
     adimpro = with pkgs; [ which xorg.xdpyinfo ];
-    cluster = [ pkgs.libiconv ];
-    KernSmooth = [ pkgs.libiconv ];
-    nlme = [ pkgs.libiconv ];
-    Matrix = [ pkgs.libiconv ];
-    mgcv = [ pkgs.libiconv ];
-    minqa = [ pkgs.libiconv ];
-    igraph = [ pkgs.libiconv ];
-    ape = [ pkgs.libiconv ];
-    expm = [ pkgs.libiconv ];
-    mnormt = [ pkgs.libiconv ];
-    pan = [ pkgs.libiconv ];
-    phangorn = [ pkgs.libiconv ];
-    quadprog = [ pkgs.libiconv ];
-    randomForest = [ pkgs.libiconv ];
-    sundialr = [ pkgs.libiconv ];
-    ucminf = [ pkgs.libiconv ];
-    glmnet = [ pkgs.libiconv ];
-    mvtnorm = [ pkgs.libiconv ];
-    statmod = [ pkgs.libiconv ];
     rsvg = [ pkgs.librsvg.dev ];
     ssh = with pkgs; [ libssh ];
     s2 = [ pkgs.openssl.dev ];
diff --git a/pkgs/development/r-modules/generic-builder.nix b/pkgs/development/r-modules/generic-builder.nix
index 880fff44ed6..05c069383e7 100644
--- a/pkgs/development/r-modules/generic-builder.nix
+++ b/pkgs/development/r-modules/generic-builder.nix
@@ -1,11 +1,11 @@
-{ stdenv, lib, R, libcxx, xvfb-run, util-linux, Cocoa, Foundation, gettext, gfortran }:
+{ stdenv, lib, R, libcxx, xvfb-run, util-linux, Cocoa, Foundation, gettext, gfortran, libiconv }:
 
 { name, buildInputs ? [], requireX ? false, ... } @ attrs:
 
 stdenv.mkDerivation ({
   buildInputs = buildInputs ++ [R gettext] ++
                 lib.optionals requireX [util-linux xvfb-run] ++
-                lib.optionals stdenv.isDarwin [Cocoa Foundation gfortran];
+                lib.optionals stdenv.isDarwin [Cocoa Foundation gfortran libiconv];
 
   NIX_CFLAGS_COMPILE =
     lib.optionalString stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1";
diff --git a/pkgs/development/tools/codeowners/default.nix b/pkgs/development/tools/codeowners/default.nix
index 2b17f00863b..186b8b4fdb7 100644
--- a/pkgs/development/tools/codeowners/default.nix
+++ b/pkgs/development/tools/codeowners/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "codeowners";
-  version = "1.1.1";
+  version = "1.1.2";
 
   src = fetchFromGitHub {
     owner = "hmarr";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-lklKZCDX/e3MZ0ix3A4AIEICPoufBq7SAIULqDXOYDI=";
+    hash = "sha256-bjSlt439Y5hmbxR6s4J37ao+P2tuKNuwqRg872P+MUg=";
   };
 
-  vendorSha256 = "sha256-G+oaX3SXsHJu3lq6n8dLmoRXDAYcFkrYarwePB/MdEU=";
+  vendorHash = "sha256-G+oaX3SXsHJu3lq6n8dLmoRXDAYcFkrYarwePB/MdEU=";
 
   meta = with lib; {
     description = "A CLI and Go library for Github's CODEOWNERS file";
diff --git a/pkgs/development/tools/database/pgagroal/default.nix b/pkgs/development/tools/database/pgagroal/default.nix
new file mode 100644
index 00000000000..e86e19f8f2e
--- /dev/null
+++ b/pkgs/development/tools/database/pgagroal/default.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchFromGitHub, cmake, docutils, libev, openssl, systemd }:
+
+stdenv.mkDerivation rec {
+  pname = "pgagroal";
+  version = "1.5.1";
+
+  src = fetchFromGitHub {
+    owner = "agroal";
+    repo = "pgagroal";
+    rev = version;
+    hash = "sha256-d6icEYlk0qnzmoP/mvSmTw16YfIYWc2WbY7sKguX7Ug=";
+  };
+
+  patches = [ ./do-not-search-libatomic.patch ];
+
+  nativeBuildInputs = [ cmake docutils ];
+
+  buildInputs = [ libev openssl systemd ];
+
+  meta = with lib; {
+    description = "High-performance connection pool for PostgreSQL";
+    homepage = "https://agroal.github.io/pgagroal/";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.marsam ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/tools/database/pgagroal/do-not-search-libatomic.patch b/pkgs/development/tools/database/pgagroal/do-not-search-libatomic.patch
new file mode 100644
index 00000000000..7f65205332b
--- /dev/null
+++ b/pkgs/development/tools/database/pgagroal/do-not-search-libatomic.patch
@@ -0,0 +1,15 @@
+--- i/CMakeLists.txt
++++ w/CMakeLists.txt
+@@ -78,12 +78,6 @@
+ endif()
+ 
+ if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+-  find_package(Libatomic)
+-  if (LIBATOMIC_FOUND)
+-    message(STATUS "libatomic found")
+-  else ()
+-    message(FATAL_ERROR "libatomic needed")
+-  endif()
+ 
+   find_package(Systemd)
+   if (SYSTEMD_FOUND)
diff --git a/pkgs/development/tools/devbox/default.nix b/pkgs/development/tools/devbox/default.nix
index 43e6e33606b..0b82242fa81 100644
--- a/pkgs/development/tools/devbox/default.nix
+++ b/pkgs/development/tools/devbox/default.nix
@@ -5,13 +5,13 @@
 }:
 buildGoModule rec {
   pname = "devbox";
-  version = "0.3.2";
+  version = "0.3.3";
 
   src = fetchFromGitHub {
     owner = "jetpack-io";
     repo = pname;
     rev = version;
-    hash = "sha256-RYuSreMdXnWJ47lBCuz7Ub6jlLlmEI6ZGt3vSg4B3zs=";
+    hash = "sha256-T1laFLVDtDYOA5x3zWcBU7ae1uN1cQUqLHtY36uEXOI=";
   };
 
   ldflags = [
diff --git a/pkgs/development/tools/language-servers/sumneko-lua-language-server/default.nix b/pkgs/development/tools/language-servers/lua-language-server/default.nix
index 24b360a7818..d260e7601e2 100644
--- a/pkgs/development/tools/language-servers/sumneko-lua-language-server/default.nix
+++ b/pkgs/development/tools/language-servers/lua-language-server/default.nix
@@ -1,16 +1,14 @@
 { lib, stdenv, fetchFromGitHub, ninja, makeWrapper, CoreFoundation, Foundation }:
-let
-  target = if stdenv.isDarwin then "macOS" else "Linux";
-in
+
 stdenv.mkDerivation rec {
-  pname = "sumneko-lua-language-server";
-  version = "3.6.7";
+  pname = "lua-language-server";
+  version = "3.6.10";
 
   src = fetchFromGitHub {
-    owner = "sumneko";
+    owner = "luals";
     repo = "lua-language-server";
     rev = version;
-    sha256 = "sha256-x7/yO1rJ+VBG4EFpISYblRECLW2lsLz5wcqLR14UV/g=";
+    sha256 = "sha256-QnkWEf1Uv+CZwEyv1b3WMPvaOZEn+mKH5w3CPyw02CQ=";
     fetchSubmodules = true;
   };
 
@@ -24,12 +22,13 @@ stdenv.mkDerivation rec {
     Foundation
   ];
 
-  preBuild = ''
-    cd 3rd/luamake
-  ''
-  + lib.optionalString stdenv.isDarwin ''
-    # Needed for the test
-    export HOME=/var/empty
+  postPatch = ''
+    # filewatch tests are failing on darwin
+    # this feature is not used in lua-language-server
+    sed -i /filewatch/d 3rd/bee.lua/test/test.lua
+
+    pushd 3rd/luamake
+  '' + lib.optionalString stdenv.isDarwin ''
     # This package uses the program clang for C and C++ files. The language
     # is selected via the command line argument -std, but this do not work
     # in combination with the nixpkgs clang wrapper. Therefor we have to
@@ -44,11 +43,11 @@ stdenv.mkDerivation rec {
   '';
 
   ninjaFlags = [
-    "-fcompile/ninja/${lib.toLower target}.ninja"
+    "-fcompile/ninja/${if stdenv.isDarwin then "macos" else "linux"}.ninja"
   ];
 
   postBuild = ''
-    cd ../..
+    popd
     ./3rd/luamake/luamake rebuild
   '';
 
@@ -66,18 +65,20 @@ stdenv.mkDerivation rec {
     makeWrapper "$out"/share/lua-language-server/bin/lua-language-server \
       $out/bin/lua-language-server \
       --add-flags "-E $out/share/lua-language-server/main.lua \
-      --logpath=\''${XDG_CACHE_HOME:-\$HOME/.cache}/sumneko_lua/log \
-      --metapath=\''${XDG_CACHE_HOME:-\$HOME/.cache}/sumneko_lua/meta"
+      --logpath=\''${XDG_CACHE_HOME:-\$HOME/.cache}/lua-language-server/log \
+      --metapath=\''${XDG_CACHE_HOME:-\$HOME/.cache}/lua-language-server/meta"
 
     runHook postInstall
   '';
 
+  # some tests require local networking
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
-    description = "Lua Language Server coded by Lua";
-    homepage = "https://github.com/sumneko/lua-language-server";
+    description = "A language server that offers Lua language support";
+    homepage = "https://github.com/luals/lua-language-server";
     license = licenses.mit;
-    maintainers = with maintainers; [ sei40kr ];
+    maintainers = with maintainers; [ figsoda sei40kr ];
     platforms = platforms.linux ++ platforms.darwin;
-    mainProgram = "lua-language-server";
   };
 }
diff --git a/pkgs/development/tools/lazygit/default.nix b/pkgs/development/tools/lazygit/default.nix
index 57c405a7f7b..4e60fffbeb5 100644
--- a/pkgs/development/tools/lazygit/default.nix
+++ b/pkgs/development/tools/lazygit/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "lazygit";
-  version = "0.36.0";
+  version = "0.37.0";
 
   src = fetchFromGitHub {
     owner = "jesseduffield";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-0emAo/K27lmQ+409maTR/hnonQVkbijF0RAwvIErBFo=";
+    sha256 = "sha256-A6aFHC4MNNFl7IieR/7aQ3cMzhBXfQwq6sPv+v5Gu4o=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/development/tools/misc/sqitch/default.nix b/pkgs/development/tools/misc/sqitch/default.nix
index f941ab05e28..ae880ceb8ba 100644
--- a/pkgs/development/tools/misc/sqitch/default.nix
+++ b/pkgs/development/tools/misc/sqitch/default.nix
@@ -5,13 +5,15 @@
 , shortenPerlShebang
 , mysqlSupport ? false
 , postgresqlSupport ? false
+, templateToolkitSupport ? false
 }:
 
 let
   sqitch = perlPackages.AppSqitch;
   modules = with perlPackages; [ ]
     ++ lib.optional mysqlSupport DBDmysql
-    ++ lib.optional postgresqlSupport DBDPg;
+    ++ lib.optional postgresqlSupport DBDPg
+    ++ lib.optional templateToolkitSupport TemplateToolkit;
 in
 
 stdenv.mkDerivation {
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
index 5faccab938e..de8906dba44 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
@@ -7,6 +7,7 @@ buildDunePackage rec {
   pname = "js_of_ocaml-compiler";
   version = "4.1.0";
   duneVersion = "3";
+  minimalOCamlVersion = "4.08";
 
   src = fetchurl {
     url = "https://github.com/ocsigen/js_of_ocaml/releases/download/${version}/js_of_ocaml-${version}.tbz";
diff --git a/pkgs/development/tools/pipenv/default.nix b/pkgs/development/tools/pipenv/default.nix
index 2d19f0fca3c..e347f4c48e0 100644
--- a/pkgs/development/tools/pipenv/default.nix
+++ b/pkgs/development/tools/pipenv/default.nix
@@ -23,11 +23,11 @@ let
 
 in buildPythonApplication rec {
   pname = "pipenv";
-  version = "2022.11.25";
+  version = "2023.2.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-ElnWxwU7EIbZqqvIGp/rc5vS0X6BuyAgSJoy7BQYYu4=";
+    sha256 = "sha256-GKPrpRnjbVnw1af5xCvSaFIeS5t7PRvWrc8TFWkyMnU=";
   };
 
   LC_ALL = "en_US.UTF-8";
diff --git a/pkgs/development/tools/ruff/default.nix b/pkgs/development/tools/ruff/default.nix
index 7e6f8321249..e44dd324dae 100644
--- a/pkgs/development/tools/ruff/default.nix
+++ b/pkgs/development/tools/ruff/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ruff";
-  version = "0.0.242";
+  version = "0.0.243";
 
   src = fetchFromGitHub {
     owner = "charliermarsh";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-TdaFo1U37W0UtGWtRchwdtTvyfljDOvtBJ7vCym1FX4=";
+    sha256 = "sha256-iRkcZ8+RoZifMGbP5ZD++9UJbsCVuwUYmgWfAQpuX1E=";
   };
 
-  cargoSha256 = "sha256-3gW9wV6aYVnKNxW79mJCy/lkQUD67G6U47JiOQriT40=";
+  cargoSha256 = "sha256-t6PP0Tc3ULkVt056fZnPfObxcz2ek0ZxafkVj2SfBZg=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix b/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix
index 3af3e43fe21..6098c50df13 100644
--- a/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix
+++ b/pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix
@@ -5,7 +5,7 @@
 }@inputs:
 
 let
-  inherit (pkgs) stdenv lib fetchurl linkFarm callPackage git rsync makeWrapper runCommandLocal;
+  inherit (pkgs) stdenv lib callPackage git rsync runCommandLocal;
 
   compose = f: g: x: f (g x);
   id = x: x;
diff --git a/pkgs/development/web/deno/default.nix b/pkgs/development/web/deno/default.nix
index 4e1563f7716..7dda8b1e7b3 100644
--- a/pkgs/development/web/deno/default.nix
+++ b/pkgs/development/web/deno/default.nix
@@ -17,15 +17,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "deno";
-  version = "1.30.2";
+  version = "1.30.3";
 
   src = fetchFromGitHub {
     owner = "denoland";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-WpS1pqy6o8FUWMdJpzG5T8xoCkQZ/SbWI4k9vellVb8=";
+    sha256 = "sha256-Dg4ZX1CpjZuCXDu3GxbaRIwdhDuJ50j53b6XETfFGAU=";
   };
-  cargoSha256 = "sha256-RVoXHrEWMwuC+nD6ypiZzGsYEr/BFReE67z7gqqDOzA=";
+  cargoSha256 = "sha256-6V9djLUmPEQDewKEN0ND7zyXSrKdakXZdYSRsyXWNuE=";
 
   postPatch = ''
     # upstream uses lld on aarch64-darwin for faster builds