about summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/compilers/dtc/default.nix2
-rw-r--r--pkgs/development/compilers/ligo/default.nix8
-rw-r--r--pkgs/development/compilers/llvm/10/default.nix9
-rw-r--r--pkgs/development/compilers/llvm/10/lldb/default.nix128
-rw-r--r--pkgs/development/compilers/llvm/11/default.nix9
-rw-r--r--pkgs/development/compilers/llvm/11/lldb/default.nix126
-rw-r--r--pkgs/development/compilers/llvm/12/default.nix22
-rw-r--r--pkgs/development/compilers/llvm/12/lldb/default.nix142
-rw-r--r--pkgs/development/compilers/llvm/13/default.nix35
-rw-r--r--pkgs/development/compilers/llvm/13/lldb/default.nix159
-rw-r--r--pkgs/development/compilers/llvm/14/default.nix35
-rw-r--r--pkgs/development/compilers/llvm/14/lldb/default.nix167
-rw-r--r--pkgs/development/compilers/llvm/15/default.nix35
-rw-r--r--pkgs/development/compilers/llvm/16/default.nix40
-rw-r--r--pkgs/development/compilers/llvm/16/lldb/default.nix186
-rw-r--r--pkgs/development/compilers/llvm/common/lldb.nix (renamed from pkgs/development/compilers/llvm/15/lldb/default.nix)151
-rw-r--r--pkgs/development/ocaml-modules/bls12-381-hash/default.nix27
-rw-r--r--pkgs/development/ocaml-modules/bls12-381/default.nix35
-rw-r--r--pkgs/development/ocaml-modules/seqes/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/default.nix37
-rw-r--r--pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/plompiler.nix44
-rw-r--r--pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/plonk.nix35
-rw-r--r--pkgs/development/python-modules/nextcord/default.nix4
-rw-r--r--pkgs/development/python-modules/pyblock/default.nix37
-rw-r--r--pkgs/development/python-modules/pyres/default.nix33
-rw-r--r--pkgs/development/python-modules/requests-futures/default.nix25
-rw-r--r--pkgs/development/python-modules/zake/default.nix37
-rw-r--r--pkgs/development/tools/database/schemaspy/default.nix2
-rw-r--r--pkgs/development/tools/global-platform-pro/default.nix44
-rw-r--r--pkgs/development/tools/language-servers/millet/Cargo.lock72
-rw-r--r--pkgs/development/tools/language-servers/millet/default.nix4
31 files changed, 359 insertions, 1350 deletions
diff --git a/pkgs/development/compilers/dtc/default.nix b/pkgs/development/compilers/dtc/default.nix
index 7846d564da17..d9013895becc 100644
--- a/pkgs/development/compilers/dtc/default.nix
+++ b/pkgs/development/compilers/dtc/default.nix
@@ -83,7 +83,7 @@ stdenv.mkDerivation (finalAttrs: {
   mesonAutoFeatures = "auto";
   mesonFlags = [
     (lib.mesonBool "static-build" stdenv.hostPlatform.isStatic)
-    (lib.mesonBool "tests" finalAttrs.doCheck)
+    (lib.mesonBool "tests" finalAttrs.finalPackage.doCheck)
   ];
 
   doCheck =
diff --git a/pkgs/development/compilers/ligo/default.nix b/pkgs/development/compilers/ligo/default.nix
index af29757299d8..6ab93ae0ac65 100644
--- a/pkgs/development/compilers/ligo/default.nix
+++ b/pkgs/development/compilers/ligo/default.nix
@@ -15,12 +15,12 @@
 
 ocamlPackages.buildDunePackage rec {
   pname = "ligo";
-  version = "0.66.0";
+  version = "0.67.1";
   src = fetchFromGitLab {
     owner = "ligolang";
     repo = "ligo";
     rev = version;
-    sha256 = "sha256-BFeNnpMT+WKqTvjVg+H2qHl5EUMcbe7xmJohbpD99gY=";
+    sha256 = "sha256-trLl4suIu2b+naw99Fwr+iEZrfYV3s4Sedg2lX3uUcA=";
     fetchSubmodules = true;
   };
 
@@ -103,8 +103,6 @@ ocamlPackages.buildDunePackage rec {
     # vendored tezos' deps
     aches
     aches-lwt
-    tezos-plonk
-    tezos-bls12-381-polynomial
     ctypes
     ctypes_stubs_js
     class_group_vdf
@@ -128,6 +126,8 @@ ocamlPackages.buildDunePackage rec {
     pure-splitmix
     zarith_stubs_js
     simple-diff
+    seqes
+    stdint
   ] ++ lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.Security
   ];
diff --git a/pkgs/development/compilers/llvm/10/default.nix b/pkgs/development/compilers/llvm/10/default.nix
index 4964d405d32e..44791f09e384 100644
--- a/pkgs/development/compilers/llvm/10/default.nix
+++ b/pkgs/development/compilers/llvm/10/default.nix
@@ -131,8 +131,13 @@ let
       inherit llvm_meta;
     };
 
-    lldb = callPackage ./lldb {
-      inherit llvm_meta;
+    lldb = callPackage ../common/lldb.nix {
+      src = fetch "lldb" "051p5b04y6z3g730rmc2n2v71lipbw7k69riww3a6sl74myfiaq7";
+      patches = [
+        ./lldb/procfs.patch
+        ./lldb/gnu-install-dirs.patch
+      ];
+      inherit llvm_meta release_version;
     };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
diff --git a/pkgs/development/compilers/llvm/10/lldb/default.nix b/pkgs/development/compilers/llvm/10/lldb/default.nix
deleted file mode 100644
index 4a40a931af65..000000000000
--- a/pkgs/development/compilers/llvm/10/lldb/default.nix
+++ /dev/null
@@ -1,128 +0,0 @@
-{ lib, stdenv, llvm_meta
-, fetch
-, cmake
-, zlib
-, ncurses
-, swig
-, which
-, libedit
-, libxml2
-, libllvm
-, libclang
-, python3
-, version
-, darwin
-, lit
-, makeWrapper
-, enableManpages ? false
-}:
-
-stdenv.mkDerivation (rec {
-  pname = "lldb";
-  inherit version;
-
-  src = fetch pname "051p5b04y6z3g730rmc2n2v71lipbw7k69riww3a6sl74myfiaq7";
-
-  patches = [
-    ./procfs.patch
-    ./gnu-install-dirs.patch
-  ];
-
-  outputs = [ "out" "lib" "dev" ];
-
-  nativeBuildInputs = [
-    cmake python3 which swig lit makeWrapper
-  ] ++ lib.optionals enableManpages [
-    python3.pkgs.sphinx python3.pkgs.recommonmark
-  ];
-
-  buildInputs = [
-    ncurses zlib libedit libxml2 libllvm
-  ] ++ lib.optionals stdenv.isDarwin [
-    darwin.libobjc
-    darwin.apple_sdk.libs.xpc
-    darwin.apple_sdk.frameworks.Foundation
-    darwin.bootstrap_cmds
-    darwin.apple_sdk.frameworks.Carbon
-    darwin.apple_sdk.frameworks.Cocoa
-  ];
-
-  hardeningDisable = [ "format" ];
-
-  cmakeFlags = [
-    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
-    "-DLLVM_ENABLE_RTTI=OFF"
-    "-DClang_DIR=${libclang.dev}/lib/cmake"
-    "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
-  ] ++ lib.optionals enableManpages [
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-  ] ++ lib.optionals doCheck [
-    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
-    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
-  ];
-
-  doCheck = false;
-
-  doInstallCheck = true;
-
-  installCheckPhase = ''
-    if [ ! -e "$lib/${python3.sitePackages}/lldb/_lldb.so" ] ; then
-        echo "ERROR: python files not installed where expected!";
-        return 1;
-    fi
-  '';
-
-  postInstall = ''
-    wrapProgram $out/bin/lldb --prefix PYTHONPATH : $lib/${python3.sitePackages}/
-
-    # Editor support
-    # vscode:
-    install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
-    mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-    ln -s $out/bin/llvm-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-  '';
-
-  meta = llvm_meta // {
-    homepage = "https://lldb.llvm.org/";
-    description = "A next-generation high-performance debugger";
-    longDescription = ''
-      LLDB is a next generation, high-performance debugger. It is built as a set
-      of reusable components which highly leverage existing libraries in the
-      larger LLVM Project, such as the Clang expression parser and LLVM
-      disassembler.
-    '';
-    # never built on aarch64-darwin since first introduction in nixpkgs
-    broken = stdenv.isDarwin && stdenv.isAarch64;
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "lldb-manpages";
-
-  buildPhase = ''
-    make docs-man
-  '';
-
-  propagatedBuildInputs = [];
-
-  # manually install lldb man page
-  installPhase = ''
-    mkdir -p $out/share/man/man1
-    install docs/man/lldb.1 -t $out/share/man/man1/
-  '';
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLDB ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/11/default.nix b/pkgs/development/compilers/llvm/11/default.nix
index a94b9d64d49b..2fd510942df9 100644
--- a/pkgs/development/compilers/llvm/11/default.nix
+++ b/pkgs/development/compilers/llvm/11/default.nix
@@ -146,8 +146,13 @@ let
       inherit llvm_meta;
     };
 
-    lldb = callPackage ./lldb {
-      inherit llvm_meta;
+    lldb = callPackage ../common/lldb.nix {
+      src = fetch "lldb" "1vlyg015dyng43xqb8cg2l6r9ix8klibxsajazbfnckdnh54hwxj";
+      patches = [
+        ./lldb/procfs.patch
+        ./lldb/gnu-install-dirs.patch
+      ];
+      inherit llvm_meta release_version;
     };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
diff --git a/pkgs/development/compilers/llvm/11/lldb/default.nix b/pkgs/development/compilers/llvm/11/lldb/default.nix
deleted file mode 100644
index 5912323608dc..000000000000
--- a/pkgs/development/compilers/llvm/11/lldb/default.nix
+++ /dev/null
@@ -1,126 +0,0 @@
-{ lib, stdenv, llvm_meta
-, fetch
-, cmake
-, zlib
-, ncurses
-, swig
-, which
-, libedit
-, libxml2
-, libllvm
-, libclang
-, python3
-, version
-, darwin
-, lit
-, makeWrapper
-, enableManpages ? false
-}:
-
-stdenv.mkDerivation (rec {
-  pname = "lldb";
-  inherit version;
-
-  src = fetch pname "1vlyg015dyng43xqb8cg2l6r9ix8klibxsajazbfnckdnh54hwxj";
-
-  patches = [
-    ./procfs.patch
-    ./gnu-install-dirs.patch
-  ];
-
-  outputs = [ "out" "lib" "dev" ];
-
-  nativeBuildInputs = [
-    cmake python3 which swig lit makeWrapper
-  ] ++ lib.optionals enableManpages [
-    python3.pkgs.sphinx python3.pkgs.recommonmark
-  ];
-
-  buildInputs = [
-    ncurses zlib libedit libxml2 libllvm
-  ] ++ lib.optionals stdenv.isDarwin [
-    darwin.libobjc
-    darwin.apple_sdk.libs.xpc
-    darwin.apple_sdk.frameworks.Foundation
-    darwin.bootstrap_cmds
-    darwin.apple_sdk.frameworks.Carbon
-    darwin.apple_sdk.frameworks.Cocoa
-  ];
-
-  hardeningDisable = [ "format" ];
-
-  cmakeFlags = [
-    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
-    "-DLLVM_ENABLE_RTTI=OFF"
-    "-DClang_DIR=${libclang.dev}/lib/cmake"
-    "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
-  ] ++ lib.optionals enableManpages [
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-  ] ++ lib.optionals doCheck [
-    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
-    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
-  ];
-
-  doCheck = false;
-
-  doInstallCheck = true;
-
-  installCheckPhase = ''
-    if [ ! -e "$lib/${python3.sitePackages}/lldb/_lldb.so" ] ; then
-        echo "ERROR: python files not installed where expected!";
-        return 1;
-    fi
-  '';
-
-  postInstall = ''
-    wrapProgram $out/bin/lldb --prefix PYTHONPATH : $lib/${python3.sitePackages}/
-
-    # Editor support
-    # vscode:
-    install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
-    mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-    ln -s $out/bin/llvm-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-  '';
-
-  meta = llvm_meta // {
-    homepage = "https://lldb.llvm.org/";
-    description = "A next-generation high-performance debugger";
-    longDescription = ''
-      LLDB is a next generation, high-performance debugger. It is built as a set
-      of reusable components which highly leverage existing libraries in the
-      larger LLVM Project, such as the Clang expression parser and LLVM
-      disassembler.
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "lldb-manpages";
-
-  buildPhase = ''
-    make docs-man
-  '';
-
-  propagatedBuildInputs = [];
-
-  # manually install lldb man page
-  installPhase = ''
-    mkdir -p $out/share/man/man1
-    install docs/man/lldb.1 -t $out/share/man/man1/
-  '';
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLDB ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/12/default.nix b/pkgs/development/compilers/llvm/12/default.nix
index 512a576d6f5d..d7fa0517815c 100644
--- a/pkgs/development/compilers/llvm/12/default.nix
+++ b/pkgs/development/compilers/llvm/12/default.nix
@@ -135,11 +135,23 @@ let
       inherit (libraries) libunwind;
     };
 
-    lldb = callPackage ./lldb {
-      inherit llvm_meta;
-      inherit (darwin) libobjc bootstrap_cmds;
-      inherit (darwin.apple_sdk.libs) xpc;
-      inherit (darwin.apple_sdk.frameworks) Foundation Carbon Cocoa;
+    lldb = callPackage ../common/lldb.nix {
+      src = fetch "lldb" "0g3pj1m3chafavpr35r9fynm85y2hdyla6klj0h28khxs2613i78";
+      patches =
+        let
+          resourceDirPatch = callPackage ({ runCommand, libclang }: (runCommand "resource-dir.patch"
+            {
+              clangLibDir = "${libclang.lib}/lib";
+            } ''
+            substitute '${./lldb/resource-dir.patch}' "$out" --subst-var clangLibDir
+          '')) { };
+        in
+        [
+          ./lldb/procfs.patch
+          resourceDirPatch
+          ./lldb/gnu-install-dirs.patch
+        ];
+      inherit llvm_meta release_version;
     };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
diff --git a/pkgs/development/compilers/llvm/12/lldb/default.nix b/pkgs/development/compilers/llvm/12/lldb/default.nix
deleted file mode 100644
index c75eb255cd75..000000000000
--- a/pkgs/development/compilers/llvm/12/lldb/default.nix
+++ /dev/null
@@ -1,142 +0,0 @@
-{ lib, stdenv, llvm_meta
-, runCommand
-, fetch
-, cmake
-, zlib
-, ncurses
-, swig
-, which
-, libedit
-, libxml2
-, libllvm
-, libclang
-, python3
-, version
-, libobjc
-, xpc
-, Foundation
-, bootstrap_cmds
-, Carbon
-, Cocoa
-, lit
-, makeWrapper
-, enableManpages ? false
-}:
-
-stdenv.mkDerivation (rec {
-  pname = "lldb";
-  inherit version;
-
-  src = fetch pname "0g3pj1m3chafavpr35r9fynm85y2hdyla6klj0h28khxs2613i78";
-
-  patches = [
-    ./procfs.patch
-    (runCommand "resource-dir.patch" {
-      clangLibDir = "${libclang.lib}/lib";
-    } ''
-      substitute '${./resource-dir.patch}' "$out" --subst-var clangLibDir
-    '')
-    ./gnu-install-dirs.patch
-  ];
-
-  outputs = [ "out" "lib" "dev" ];
-
-  nativeBuildInputs = [
-    cmake python3 which swig lit makeWrapper
-  ] ++ lib.optionals enableManpages [
-    python3.pkgs.sphinx python3.pkgs.recommonmark
-  ];
-
-  buildInputs = [
-    ncurses
-    zlib
-    libedit
-    libxml2
-    libllvm
-  ]
-  ++ lib.optionals stdenv.isDarwin [
-    libobjc
-    xpc
-    Foundation
-    bootstrap_cmds
-    Carbon
-    Cocoa
-  ];
-
-  hardeningDisable = [ "format" ];
-
-  cmakeFlags = [
-    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
-    "-DLLVM_ENABLE_RTTI=OFF"
-    "-DClang_DIR=${libclang.dev}/lib/cmake"
-    "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
-  ] ++ lib.optionals enableManpages [
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-  ] ++ lib.optionals doCheck [
-    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
-    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
-  ];
-
-  doCheck = false;
-
-  doInstallCheck = true;
-
-  installCheckPhase = ''
-    if [ ! -e "$lib/${python3.sitePackages}/lldb/_lldb.so" ] ; then
-        echo "ERROR: python files not installed where expected!";
-        return 1;
-    fi
-  '';
-
-  postInstall = ''
-    wrapProgram $out/bin/lldb --prefix PYTHONPATH : $lib/${python3.sitePackages}/
-
-    # Editor support
-    # vscode:
-    install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
-    mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-    ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-  '';
-
-  meta = llvm_meta // {
-    homepage = "https://lldb.llvm.org/";
-    description = "A next-generation high-performance debugger";
-    longDescription = ''
-      LLDB is a next generation, high-performance debugger. It is built as a set
-      of reusable components which highly leverage existing libraries in the
-      larger LLVM Project, such as the Clang expression parser and LLVM
-      disassembler.
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "lldb-manpages";
-
-  buildPhase = ''
-    make docs-lldb-man
-  '';
-
-  propagatedBuildInputs = [];
-
-  # manually install lldb man page
-  installPhase = ''
-    mkdir -p $out/share/man/man1
-    install docs/man/lldb.1 -t $out/share/man/man1/
-  '';
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLDB ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/13/default.nix b/pkgs/development/compilers/llvm/13/default.nix
index f51f33cf9dbf..42dfd2551779 100644
--- a/pkgs/development/compilers/llvm/13/default.nix
+++ b/pkgs/development/compilers/llvm/13/default.nix
@@ -135,11 +135,36 @@ let
       inherit llvm_meta;
     };
 
-    lldb = callPackage ./lldb {
-      inherit llvm_meta;
-      inherit (darwin) libobjc bootstrap_cmds;
-      inherit (darwin.apple_sdk.libs) xpc;
-      inherit (darwin.apple_sdk.frameworks) Foundation Carbon Cocoa;
+    lldb = callPackage ../common/lldb.nix {
+      patches =
+        let
+          resourceDirPatch = callPackage ({ runCommand, libclang }: (runCommand "resource-dir.patch"
+            {
+              clangLibDir = "${libclang.lib}/lib";
+            } ''
+            substitute '${./lldb/resource-dir.patch}' "$out" --subst-var clangLibDir
+          '')) { };
+        in
+        [
+          ./lldb/procfs.patch
+          resourceDirPatch
+          ./lldb/gnu-install-dirs.patch
+        ]
+        # This is a stopgap solution if/until the macOS SDK used for x86_64 is
+        # updated.
+        #
+        # The older 10.12 SDK used on x86_64 as of this writing has a `mach/machine.h`
+        # header that does not define `CPU_SUBTYPE_ARM64E` so we replace the one use
+        # of this preprocessor symbol in `lldb` with its expansion.
+        #
+        # See here for some context:
+        # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
+        ++ lib.optional (
+          stdenv.targetPlatform.isDarwin
+            && !stdenv.targetPlatform.isAarch64
+            && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0")
+        ) ./lldb/cpu_subtype_arm64e_replacement.patch;
+      inherit llvm_meta release_version;
     };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
diff --git a/pkgs/development/compilers/llvm/13/lldb/default.nix b/pkgs/development/compilers/llvm/13/lldb/default.nix
deleted file mode 100644
index ca7a17a5e90d..000000000000
--- a/pkgs/development/compilers/llvm/13/lldb/default.nix
+++ /dev/null
@@ -1,159 +0,0 @@
-{ lib, stdenv, llvm_meta
-, runCommand
-, src
-, cmake
-, zlib
-, ncurses
-, swig
-, which
-, libedit
-, libxml2
-, libllvm
-, libclang
-, python3
-, version
-, libobjc
-, xpc
-, Foundation
-, bootstrap_cmds
-, Carbon
-, Cocoa
-, lit
-, makeWrapper
-, darwin
-, enableManpages ? false
-}:
-
-stdenv.mkDerivation (rec {
-  pname = "lldb";
-  inherit version;
-
-  inherit src;
-  sourceRoot = "source/${pname}";
-
-  patches = [
-    ./procfs.patch
-    (runCommand "resource-dir.patch" {
-      clangLibDir = "${libclang.lib}/lib";
-    } ''
-      substitute '${./resource-dir.patch}' "$out" --subst-var clangLibDir
-    '')
-    ./gnu-install-dirs.patch
-  ]
-  # This is a stopgap solution if/until the macOS SDK used for x86_64 is
-  # updated.
-  #
-  # The older 10.12 SDK used on x86_64 as of this writing has a `mach/machine.h`
-  # header that does not define `CPU_SUBTYPE_ARM64E` so we replace the one use
-  # of this preprocessor symbol in `lldb` with its expansion.
-  #
-  # See here for some context:
-  # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
-  ++ lib.optional (
-    stdenv.targetPlatform.isDarwin
-      && !stdenv.targetPlatform.isAarch64
-      && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0")
-  ) ./cpu_subtype_arm64e_replacement.patch;
-
-
-  outputs = [ "out" "lib" "dev" ];
-
-  nativeBuildInputs = [
-    cmake python3 which swig lit makeWrapper
-  ] ++ lib.optionals enableManpages [
-    python3.pkgs.sphinx python3.pkgs.recommonmark
-  ];
-
-  buildInputs = [
-    ncurses
-    zlib
-    libedit
-    libxml2
-    libllvm
-  ] ++ lib.optionals stdenv.isDarwin [
-    libobjc
-    xpc
-    Foundation
-    bootstrap_cmds
-    Carbon
-    Cocoa
-  ];
-
-  hardeningDisable = [ "format" ];
-
-  cmakeFlags = [
-    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
-    "-DLLVM_ENABLE_RTTI=OFF"
-    "-DClang_DIR=${libclang.dev}/lib/cmake"
-    "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
-  ] ++ lib.optionals enableManpages [
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-  ] ++ lib.optionals doCheck [
-    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
-    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
-  ];
-
-  doCheck = false;
-
-  doInstallCheck = true;
-
-  installCheckPhase = ''
-    if [ ! -e "$lib/${python3.sitePackages}/lldb/_lldb.so" ] ; then
-        echo "ERROR: python files not installed where expected!";
-        return 1;
-    fi
-  '';
-
-  postInstall = ''
-    wrapProgram $out/bin/lldb --prefix PYTHONPATH : $lib/${python3.sitePackages}/
-
-    # Editor support
-    # vscode:
-    install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
-    mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-    ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-  '';
-
-  meta = llvm_meta // {
-    homepage = "https://lldb.llvm.org/";
-    description = "A next-generation high-performance debugger";
-    longDescription = ''
-      LLDB is a next generation, high-performance debugger. It is built as a set
-      of reusable components which highly leverage existing libraries in the
-      larger LLVM Project, such as the Clang expression parser and LLVM
-      disassembler.
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "lldb-manpages";
-
-  buildPhase = ''
-    make docs-lldb-man
-  '';
-
-  propagatedBuildInputs = [];
-
-  # manually install lldb man page
-  installPhase = ''
-    mkdir -p $out/share/man/man1
-    install docs/man/lldb.1 -t $out/share/man/man1/
-  '';
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    broken = stdenv.isDarwin;
-    description = "man pages for LLDB ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/14/default.nix b/pkgs/development/compilers/llvm/14/default.nix
index cf3cf1133e58..5a7651958027 100644
--- a/pkgs/development/compilers/llvm/14/default.nix
+++ b/pkgs/development/compilers/llvm/14/default.nix
@@ -136,11 +136,36 @@ let
       inherit llvm_meta;
     };
 
-    lldb = callPackage ./lldb {
-      inherit llvm_meta;
-      inherit (darwin) libobjc bootstrap_cmds;
-      inherit (darwin.apple_sdk.libs) xpc;
-      inherit (darwin.apple_sdk.frameworks) Foundation Carbon Cocoa;
+    lldb = callPackage ../common/lldb.nix {
+      patches =
+        let
+          resourceDirPatch = callPackage ({ runCommand, libclang }: (runCommand "resource-dir.patch"
+            {
+              clangLibDir = "${libclang.lib}/lib";
+            } ''
+            substitute '${./lldb/resource-dir.patch}' "$out" --subst-var clangLibDir
+          '')) { };
+        in
+        [
+          ./lldb/procfs.patch
+          resourceDirPatch
+          ./lldb/gnu-install-dirs.patch
+        ]
+        # This is a stopgap solution if/until the macOS SDK used for x86_64 is
+        # updated.
+        #
+        # The older 10.12 SDK used on x86_64 as of this writing has a `mach/machine.h`
+        # header that does not define `CPU_SUBTYPE_ARM64E` so we replace the one use
+        # of this preprocessor symbol in `lldb` with its expansion.
+        #
+        # See here for some context:
+        # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
+        ++ lib.optional (
+          stdenv.targetPlatform.isDarwin
+            && !stdenv.targetPlatform.isAarch64
+            && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0")
+        ) ./lldb/cpu_subtype_arm64e_replacement.patch;
+      inherit llvm_meta release_version;
     };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
diff --git a/pkgs/development/compilers/llvm/14/lldb/default.nix b/pkgs/development/compilers/llvm/14/lldb/default.nix
deleted file mode 100644
index cd28325a5573..000000000000
--- a/pkgs/development/compilers/llvm/14/lldb/default.nix
+++ /dev/null
@@ -1,167 +0,0 @@
-{ lib, stdenv, llvm_meta
-, runCommand
-, monorepoSrc
-, cmake
-, zlib
-, ncurses
-, swig
-, which
-, libedit
-, libxml2
-, libllvm
-, libclang
-, python3
-, version
-, libobjc
-, xpc
-, Foundation
-, bootstrap_cmds
-, Carbon
-, Cocoa
-, lit
-, makeWrapper
-, darwin
-, enableManpages ? false
-, lua5_3
-}:
-
-stdenv.mkDerivation (rec {
-  pname = "lldb";
-  inherit version;
-
-  src = runCommand "${pname}-src-${version}" {} ''
-    mkdir -p "$out"
-    cp -r ${monorepoSrc}/cmake "$out"
-    cp -r ${monorepoSrc}/${pname} "$out"
-  '';
-
-  sourceRoot = "${src.name}/${pname}";
-
-  patches = [
-    ./procfs.patch
-    (runCommand "resource-dir.patch" {
-      clangLibDir = "${libclang.lib}/lib";
-    } ''
-      substitute '${./resource-dir.patch}' "$out" --subst-var clangLibDir
-    '')
-    ./gnu-install-dirs.patch
-  ]
-  # This is a stopgap solution if/until the macOS SDK used for x86_64 is
-  # updated.
-  #
-  # The older 10.12 SDK used on x86_64 as of this writing has a `mach/machine.h`
-  # header that does not define `CPU_SUBTYPE_ARM64E` so we replace the one use
-  # of this preprocessor symbol in `lldb` with its expansion.
-  #
-  # See here for some context:
-  # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
-  ++ lib.optional (
-    stdenv.targetPlatform.isDarwin
-      && !stdenv.targetPlatform.isAarch64
-      && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0")
-  ) ./cpu_subtype_arm64e_replacement.patch;
-
-  outputs = [ "out" "lib" "dev" ];
-
-  nativeBuildInputs = [
-    cmake python3 which swig lit makeWrapper lua5_3
-  ] ++ lib.optionals enableManpages [
-    python3.pkgs.sphinx python3.pkgs.recommonmark
-  ];
-
-  buildInputs = [
-    ncurses
-    zlib
-    libedit
-    libxml2
-    libllvm
-  ] ++ lib.optionals stdenv.isDarwin [
-    libobjc
-    xpc
-    Foundation
-    bootstrap_cmds
-    Carbon
-    Cocoa
-  ];
-
-  hardeningDisable = [ "format" ];
-
-  cmakeFlags = [
-    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
-    "-DLLVM_ENABLE_RTTI=OFF"
-    "-DClang_DIR=${libclang.dev}/lib/cmake"
-    "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
-  ] ++ lib.optionals enableManpages [
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-  ] ++ lib.optionals doCheck [
-    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
-    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
-  ];
-
-  doCheck = false;
-
-  doInstallCheck = true;
-
-  installCheckPhase = ''
-    if [ ! -e $lib/${python3.sitePackages}/lldb/_lldb*.so ] ; then
-        echo "ERROR: python files not installed where expected!";
-        return 1;
-    fi
-    if [ ! -e "$lib/lib/lua/${lua5_3.luaversion}/lldb.so" ] ; then
-        echo "ERROR: lua files not installed where expected!";
-        return 1;
-    fi
-  '';
-
-  postInstall = ''
-    wrapProgram $out/bin/lldb --prefix PYTHONPATH : $lib/${python3.sitePackages}/
-
-    # Editor support
-    # vscode:
-    install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
-    mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-    ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-  '';
-
-  meta = llvm_meta // {
-    homepage = "https://lldb.llvm.org/";
-    description = "A next-generation high-performance debugger";
-    longDescription = ''
-      LLDB is a next generation, high-performance debugger. It is built as a set
-      of reusable components which highly leverage existing libraries in the
-      larger LLVM Project, such as the Clang expression parser and LLVM
-      disassembler.
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "lldb-manpages";
-
-  buildPhase = ''
-    make docs-lldb-man
-  '';
-
-  propagatedBuildInputs = [];
-
-  # manually install lldb man page
-  installPhase = ''
-    mkdir -p $out/share/man/man1
-    install docs/man/lldb.1 -t $out/share/man/man1/
-  '';
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLDB ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/15/default.nix b/pkgs/development/compilers/llvm/15/default.nix
index 0e36ebb8abbb..a9fee13d12b0 100644
--- a/pkgs/development/compilers/llvm/15/default.nix
+++ b/pkgs/development/compilers/llvm/15/default.nix
@@ -184,11 +184,36 @@ in let
       inherit llvm_meta;
     };
 
-    lldb = callPackage ./lldb {
-      inherit llvm_meta;
-      inherit (darwin) libobjc bootstrap_cmds;
-      inherit (darwin.apple_sdk.libs) xpc;
-      inherit (darwin.apple_sdk.frameworks) Foundation Carbon Cocoa;
+    lldb = callPackage ../common/lldb.nix {
+      patches =
+        let
+          resourceDirPatch = callPackage ({ runCommand, libclang }: (runCommand "resource-dir.patch"
+            {
+              clangLibDir = "${libclang.lib}/lib";
+            } ''
+            substitute '${./lldb/resource-dir.patch}' "$out" --subst-var clangLibDir
+          '')) { };
+        in
+        [
+          ./lldb/procfs.patch
+          resourceDirPatch
+          ./lldb/gnu-install-dirs.patch
+        ]
+        # This is a stopgap solution if/until the macOS SDK used for x86_64 is
+        # updated.
+        #
+        # The older 10.12 SDK used on x86_64 as of this writing has a `mach/machine.h`
+        # header that does not define `CPU_SUBTYPE_ARM64E` so we replace the one use
+        # of this preprocessor symbol in `lldb` with its expansion.
+        #
+        # See here for some context:
+        # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
+        ++ lib.optional (
+          stdenv.targetPlatform.isDarwin
+            && !stdenv.targetPlatform.isAarch64
+            && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0")
+        ) ./lldb/cpu_subtype_arm64e_replacement.patch;
+      inherit llvm_meta release_version;
     };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
diff --git a/pkgs/development/compilers/llvm/16/default.nix b/pkgs/development/compilers/llvm/16/default.nix
index 1304ef2bdbc0..2a85d900c8a8 100644
--- a/pkgs/development/compilers/llvm/16/default.nix
+++ b/pkgs/development/compilers/llvm/16/default.nix
@@ -184,11 +184,41 @@ in let
       inherit llvm_meta;
     };
 
-    lldb = callPackage ./lldb {
-      inherit llvm_meta;
-      inherit (darwin) libobjc bootstrap_cmds;
-      inherit (darwin.apple_sdk.libs) xpc;
-      inherit (darwin.apple_sdk.frameworks) Foundation Carbon Cocoa;
+    lldb = callPackage ../common/lldb.nix {
+      src = callPackage ({ runCommand }: runCommand "lldb-src-${version}" {} ''
+        mkdir -p "$out"
+        cp -r ${monorepoSrc}/cmake "$out"
+        cp -r ${monorepoSrc}/lldb "$out"
+      '') { };
+      patches =
+        let
+          resourceDirPatch = callPackage ({ runCommand, libclang }: (runCommand "resource-dir.patch"
+            {
+              clangLibDir = "${libclang.lib}/lib";
+            } ''
+            substitute '${./lldb/resource-dir.patch}' "$out" --subst-var clangLibDir
+          '')) { };
+        in
+        [
+          # FIXME: do we need this? ./procfs.patch
+          resourceDirPatch
+          ./lldb/gnu-install-dirs.patch
+        ]
+        # This is a stopgap solution if/until the macOS SDK used for x86_64 is
+        # updated.
+        #
+        # The older 10.12 SDK used on x86_64 as of this writing has a `mach/machine.h`
+        # header that does not define `CPU_SUBTYPE_ARM64E` so we replace the one use
+        # of this preprocessor symbol in `lldb` with its expansion.
+        #
+        # See here for some context:
+        # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
+        ++ lib.optional (
+          stdenv.targetPlatform.isDarwin
+            && !stdenv.targetPlatform.isAarch64
+            && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0")
+        ) ./lldb/cpu_subtype_arm64e_replacement.patch;
+      inherit llvm_meta release_version;
     };
 
     # Below, is the LLVM bootstrapping logic. It handles building a
diff --git a/pkgs/development/compilers/llvm/16/lldb/default.nix b/pkgs/development/compilers/llvm/16/lldb/default.nix
deleted file mode 100644
index 062867394cc8..000000000000
--- a/pkgs/development/compilers/llvm/16/lldb/default.nix
+++ /dev/null
@@ -1,186 +0,0 @@
-{ lib, stdenv, llvm_meta
-, runCommand
-, monorepoSrc
-, cmake
-, ninja
-, zlib
-, ncurses
-, swig
-, which
-, libedit
-, libxml2
-, libllvm
-, libclang
-, python3
-, version
-, libobjc
-, xpc
-, Foundation
-, bootstrap_cmds
-, Carbon
-, Cocoa
-, lit
-, makeWrapper
-, darwin
-, enableManpages ? false
-, lua5_3
-}:
-
-# TODO: we build the python bindings but don't expose them as a python package
-# TODO: expose the vscode extension?
-
-stdenv.mkDerivation (rec {
-  pname = "lldb";
-  inherit version;
-
-  src = runCommand "${pname}-src-${version}" {} ''
-    mkdir -p "$out"
-    cp -r ${monorepoSrc}/cmake "$out"
-    cp -r ${monorepoSrc}/${pname} "$out"
-  '';
-
-  sourceRoot = "${src.name}/${pname}";
-
-  patches = [
-    # FIXME: do we need this? ./procfs.patch
-    (runCommand "resource-dir.patch" {
-      clangLibDir = "${libclang.lib}/lib";
-    } ''
-      substitute '${./resource-dir.patch}' "$out" --subst-var clangLibDir
-    '')
-    ./gnu-install-dirs.patch
-  ]
-  # This is a stopgap solution if/until the macOS SDK used for x86_64 is
-  # updated.
-  #
-  # The older 10.12 SDK used on x86_64 as of this writing has a `mach/machine.h`
-  # header that does not define `CPU_SUBTYPE_ARM64E` so we replace the one use
-  # of this preprocessor symbol in `lldb` with its expansion.
-  #
-  # See here for some context:
-  # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
-  ++ lib.optional (
-    stdenv.targetPlatform.isDarwin
-      && !stdenv.targetPlatform.isAarch64
-      && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0")
-  ) ./cpu_subtype_arm64e_replacement.patch;
-
-  outputs = [ "out" "lib" "dev" ];
-
-  nativeBuildInputs = [
-    cmake ninja python3 which swig lit makeWrapper lua5_3
-  ] ++ lib.optionals enableManpages [
-    python3.pkgs.sphinx python3.pkgs.recommonmark
-  ];
-
-  buildInputs = [
-    ncurses
-    zlib
-    libedit
-    libxml2
-    libllvm
-  ] ++ lib.optionals stdenv.isDarwin [
-    libobjc
-    xpc
-    Foundation
-    bootstrap_cmds
-    Carbon
-    Cocoa
-  ]
-  # The older libSystem used on x86_64 macOS is missing the
-  # `<bsm/audit_session.h>` header which `lldb` uses.
-  #
-  # We copy this header over from macOS 10.12 SDK.
-  #
-  # See here for context:
-  # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
-  ++ lib.optional (
-      stdenv.targetPlatform.isDarwin
-        && !stdenv.targetPlatform.isAarch64
-    ) (
-      runCommand "bsm-audit-session-header" { } ''
-        install -Dm444 \
-          "${lib.getDev darwin.apple_sdk.sdk}/include/bsm/audit_session.h" \
-          "$out/include/bsm/audit_session.h"
-      ''
-    );
-
-  hardeningDisable = [ "format" ];
-
-  cmakeFlags = [
-    "-DLLDB_INCLUDE_TESTS=${if doCheck then "YES" else "NO"}"
-    "-DLLVM_ENABLE_RTTI=OFF"
-    "-DClang_DIR=${libclang.dev}/lib/cmake"
-    "-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
-  ] ++ lib.optionals enableManpages [
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-
-    # docs reference `automodapi` but it's not added to the extensions list when
-    # only building the manpages:
-    # https://github.com/llvm/llvm-project/blob/af6ec9200b09039573d85e349496c4f5b17c3d7f/lldb/docs/conf.py#L54
-    #
-    # so, we just ignore the resulting errors
-    "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
-  ] ++ lib.optionals doCheck [
-    "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
-    "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
-  ];
-
-  doCheck = false;
-
-  installCheckPhase = ''
-    if [ ! -e "$lib/${python3.sitePackages}/lldb/_lldb.so" ] ; then
-        return 1;
-    fi
-  '';
-
-  postInstall = ''
-    wrapProgram $out/bin/lldb --prefix PYTHONPATH : $lib/${python3.sitePackages}/
-
-    # Editor support
-    # vscode:
-    install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
-    mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-    ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-  '';
-
-  meta = llvm_meta // {
-    homepage = "https://lldb.llvm.org/";
-    description = "A next-generation high-performance debugger";
-    longDescription = ''
-      LLDB is a next generation, high-performance debugger. It is built as a set
-      of reusable components which highly leverage existing libraries in the
-      larger LLVM Project, such as the Clang expression parser and LLVM
-      disassembler.
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "lldb-manpages";
-
-  ninjaFlags = [ "docs-lldb-man" ];
-
-  propagatedBuildInputs = [];
-
-  # manually install lldb man page
-  installPhase = ''
-    mkdir -p $out/share/man/man1
-    install docs/man/lldb.1 -t $out/share/man/man1/
-  '';
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLDB ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/15/lldb/default.nix b/pkgs/development/compilers/llvm/common/lldb.nix
index 4b50b79cf613..82ad9c304ea6 100644
--- a/pkgs/development/compilers/llvm/15/lldb/default.nix
+++ b/pkgs/development/compilers/llvm/common/lldb.nix
@@ -1,8 +1,8 @@
-{ lib, stdenv, llvm_meta
-, runCommand
-, monorepoSrc
+{ lib
+, stdenv
+, llvm_meta
+, release_version
 , cmake
-, ninja
 , zlib
 , ncurses
 , swig
@@ -13,64 +13,57 @@
 , libclang
 , python3
 , version
-, libobjc
-, xpc
-, Foundation
-, bootstrap_cmds
-, Carbon
-, Cocoa
+, darwin
 , lit
 , makeWrapper
-, darwin
-, enableManpages ? false
 , lua5_3
+, ninja
+, runCommand
+, src ? null
+, monorepoSrc ? null
+, patches ? [ ]
+, enableManpages ? false
 }:
 
-# TODO: we build the python bindings but don't expose them as a python package
-# TODO: expose the vscode extension?
+let
+  src' =
+    if monorepoSrc != null then
+      runCommand "lldb-src-${version}" { } ''
+        mkdir -p "$out"
+        cp -r ${monorepoSrc}/cmake "$out"
+        cp -r ${monorepoSrc}/lldb "$out"
+      '' else src;
+in
 
 stdenv.mkDerivation (rec {
+  passthru.monorepoSrc = monorepoSrc;
   pname = "lldb";
   inherit version;
 
-  src = runCommand "${pname}-src-${version}" {} ''
-    mkdir -p "$out"
-    cp -r ${monorepoSrc}/cmake "$out"
-    cp -r ${monorepoSrc}/${pname} "$out"
-  '';
-
-  sourceRoot = "${src.name}/${pname}";
-
-  patches = [
-    ./procfs.patch
-    (runCommand "resource-dir.patch" {
-      clangLibDir = "${libclang.lib}/lib";
-    } ''
-      substitute '${./resource-dir.patch}' "$out" --subst-var clangLibDir
-    '')
-    ./gnu-install-dirs.patch
-  ]
-  # This is a stopgap solution if/until the macOS SDK used for x86_64 is
-  # updated.
-  #
-  # The older 10.12 SDK used on x86_64 as of this writing has a `mach/machine.h`
-  # header that does not define `CPU_SUBTYPE_ARM64E` so we replace the one use
-  # of this preprocessor symbol in `lldb` with its expansion.
-  #
-  # See here for some context:
-  # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
-  ++ lib.optional (
-    stdenv.targetPlatform.isDarwin
-      && !stdenv.targetPlatform.isAarch64
-      && (lib.versionOlder darwin.apple_sdk.sdk.version "11.0")
-  ) ./cpu_subtype_arm64e_replacement.patch;
+  src = src';
+  inherit patches;
 
   outputs = [ "out" "lib" "dev" ];
 
+  sourceRoot =
+    if lib.versionOlder release_version "13" then null
+    else "${src.name}/${pname}";
+
   nativeBuildInputs = [
-    cmake ninja python3 which swig lit makeWrapper lua5_3
+    cmake
+  ] ++ lib.optionals (lib.versionAtLeast release_version "15") [
+    ninja
+  ] ++ [
+    python3
+    which
+    swig
+    lit
+    makeWrapper
+  ] ++ lib.optionals (lib.versionAtLeast release_version "14") [
+    lua5_3
   ] ++ lib.optionals enableManpages [
-    python3.pkgs.sphinx python3.pkgs.recommonmark
+    python3.pkgs.sphinx
+    python3.pkgs.recommonmark
   ];
 
   buildInputs = [
@@ -80,12 +73,12 @@ stdenv.mkDerivation (rec {
     libxml2
     libllvm
   ] ++ lib.optionals stdenv.isDarwin [
-    libobjc
-    xpc
-    Foundation
-    bootstrap_cmds
-    Carbon
-    Cocoa
+    darwin.libobjc
+    darwin.apple_sdk.libs.xpc
+    darwin.apple_sdk.frameworks.Foundation
+    darwin.bootstrap_cmds
+    darwin.apple_sdk.frameworks.Carbon
+    darwin.apple_sdk.frameworks.Cocoa
   ]
   # The older libSystem used on x86_64 macOS is missing the
   # `<bsm/audit_session.h>` header which `lldb` uses.
@@ -96,7 +89,8 @@ stdenv.mkDerivation (rec {
   # https://github.com/NixOS/nixpkgs/pull/194634#issuecomment-1272129132
   ++ lib.optional (
       stdenv.targetPlatform.isDarwin
-        && !stdenv.targetPlatform.isAarch64
+      && !stdenv.targetPlatform.isAarch64
+      && (lib.versionAtLeast release_version "15")
     ) (
       runCommand "bsm-audit-session-header" { } ''
         install -Dm444 \
@@ -116,29 +110,45 @@ stdenv.mkDerivation (rec {
     "-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
   ] ++ lib.optionals (!stdenv.isDarwin) [
     "-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
-  ] ++ lib.optionals enableManpages [
+  ] ++ lib.optionals enableManpages ([
     "-DLLVM_ENABLE_SPHINX=ON"
     "-DSPHINX_OUTPUT_MAN=ON"
     "-DSPHINX_OUTPUT_HTML=OFF"
-
+  ] ++ lib.optionals (lib.versionAtLeast release_version "15") [
     # docs reference `automodapi` but it's not added to the extensions list when
     # only building the manpages:
     # https://github.com/llvm/llvm-project/blob/af6ec9200b09039573d85e349496c4f5b17c3d7f/lldb/docs/conf.py#L54
     #
     # so, we just ignore the resulting errors
     "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
-  ] ++ lib.optionals doCheck [
+  ]) ++ lib.optionals doCheck [
     "-DLLDB_TEST_C_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc"
     "-DLLDB_TEST_CXX_COMPILER=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}c++"
   ];
 
   doCheck = false;
 
-  installCheckPhase = ''
-    if [ ! -e "$lib/${python3.sitePackages}/lldb/_lldb.so" ] ; then
-        return 1;
-    fi
-  '';
+  # TODO: cleanup with mass-rebuild
+  installCheckPhase =
+    if ((lib.versions.major release_version) == "14") then ''
+      if [ ! -e $lib/${python3.sitePackages}/lldb/_lldb*.so ] ; then
+          echo "ERROR: python files not installed where expected!";
+          return 1;
+      fi
+      if [ ! -e "$lib/lib/lua/${lua5_3.luaversion}/lldb.so" ] ; then
+          echo "ERROR: lua files not installed where expected!";
+          return 1;
+      fi
+    '' else if (((lib.versions.major release_version) == "15") || (lib.versions.major release_version) == "16") then ''
+      if [ ! -e "$lib/${python3.sitePackages}/lldb/_lldb.so" ] ; then
+          return 1;
+      fi
+    '' else ''
+      if [ ! -e "$lib/${python3.sitePackages}/lldb/_lldb.so" ] ; then
+          echo "ERROR: python files not installed where expected!";
+          return 1;
+      fi
+    '';
 
   postInstall = ''
     wrapProgram $out/bin/lldb --prefix PYTHONPATH : $lib/${python3.sitePackages}/
@@ -147,7 +157,7 @@ stdenv.mkDerivation (rec {
     # vscode:
     install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
     mkdir -p $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
-    ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
+    ln -s $out/bin/${if (lib.versionOlder release_version "12") then "llvm-vscode" else "lldb-vscode"} $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
   '';
 
   meta = llvm_meta // {
@@ -159,13 +169,24 @@ stdenv.mkDerivation (rec {
       larger LLVM Project, such as the Clang expression parser and LLVM
       disassembler.
     '';
+    # llvm <10 never built on aarch64-darwin since first introduction in nixpkgs
+    broken =
+      (lib.versionOlder release_version "11" && stdenv.isDarwin && stdenv.isAarch64)
+        || (((lib.versions.major release_version) == "13") && stdenv.isDarwin);
   };
+} // lib.optionalAttrs (lib.versionOlder release_version "15") {
+  doInstallCheck = true;
 } // lib.optionalAttrs enableManpages {
   pname = "lldb-manpages";
 
-  ninjaFlags = [ "docs-lldb-man" ];
+  buildPhase =
+    if lib.versionOlder release_version "15" then ''
+      make ${if (lib.versionOlder release_version "12") then "docs-man" else "docs-lldb-man"}
+    '' else null;
+
+  ninjaFlags = if lib.versionAtLeast release_version "15" then [ "docs-lldb-man" ] else null;
 
-  propagatedBuildInputs = [];
+  propagatedBuildInputs = [ ];
 
   # manually install lldb man page
   installPhase = ''
diff --git a/pkgs/development/ocaml-modules/bls12-381-hash/default.nix b/pkgs/development/ocaml-modules/bls12-381-hash/default.nix
deleted file mode 100644
index 1b39439c747a..000000000000
--- a/pkgs/development/ocaml-modules/bls12-381-hash/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, fetchFromGitLab
-, buildDunePackage
-, bls12-381
-}:
-
-buildDunePackage rec {
-  pname = "bls12-381-hash";
-  version = "1.0.0";
-  src = fetchFromGitLab {
-    owner = "nomadic-labs";
-    repo = "cryptography/ocaml-bls12-381-hash";
-    rev = "${version}";
-    sha256 = "sha256-cfsSVmN4rbKcLcPcy6NduZktJhPXiVdK75LypmaSe9I=";
-  };
-
-  duneVersion = "3";
-
-  propagatedBuildInputs = [ bls12-381 ];
-
-  meta = {
-    description = "Implementation of some cryptographic hash primitives using the scalar field of BLS12-381";
-    license = lib.licenses.mit;
-    homepage = "https://gitlab.com/nomadic-labs/privacy-team";
-    maintainers = [ lib.maintainers.ulrikstrid ];
-  };
-}
diff --git a/pkgs/development/ocaml-modules/bls12-381/default.nix b/pkgs/development/ocaml-modules/bls12-381/default.nix
index 20b2cd66a758..65b1a476f9dd 100644
--- a/pkgs/development/ocaml-modules/bls12-381/default.nix
+++ b/pkgs/development/ocaml-modules/bls12-381/default.nix
@@ -1,40 +1,47 @@
-{ lib, buildDunePackage, fetchFromGitLab
-, ff-sig, zarith
+{ lib
+, buildDunePackage
+, fetchFromGitLab
+, zarith
 , zarith_stubs_js ? null
 , integers_stubs_js
-, integers, hex
-, alcotest, ff-pbt
+, integers
+, hex
+, alcotest
 }:
 
 buildDunePackage rec {
   pname = "bls12-381";
-  version = "5.0.0";
+  version = "6.1.0";
   src = fetchFromGitLab {
-    owner = "dannywillems";
-    repo = "ocaml-bls12-381";
+    owner = "nomadic-labs";
+    repo = "cryptography/ocaml-bls12-381";
     rev = version;
-    sha256 = "sha256-Hy/I+743HSToZgGPFFiAbx7nrybHsE2PwycDsu3DuHM=";
+    sha256 = "sha256-z2ZSOrXgm+XjdrY91vqxXSKhA0DyJz6JkkNljDZznX8=";
   };
 
   minimalOCamlVersion = "4.08";
-  duneVersion = "3";
+
+  postPatch = ''
+    patchShebangs ./src/*.sh
+  '';
 
   propagatedBuildInputs = [
-    ff-sig
     zarith
     zarith_stubs_js
     integers_stubs_js
-    integers
     hex
+    integers
   ];
 
-  checkInputs = [ alcotest ff-pbt ];
+  checkInputs = [
+    alcotest
+  ];
 
   doCheck = true;
 
   meta = {
-    homepage = "https://gitlab.com/dannywillems/ocaml-bls12-381";
-    description = "OCaml binding for bls12-381 from librustzcash";
+    homepage = "	https://nomadic-labs.gitlab.io/cryptography/ocaml-bls12-381/bls12-381/";
+    description = "Implementation of BLS12-381 and some cryptographic primitives built on top of it";
     license = lib.licenses.mit;
     maintainers = [ lib.maintainers.ulrikstrid ];
   };
diff --git a/pkgs/development/ocaml-modules/seqes/default.nix b/pkgs/development/ocaml-modules/seqes/default.nix
new file mode 100644
index 000000000000..04bed64ac649
--- /dev/null
+++ b/pkgs/development/ocaml-modules/seqes/default.nix
@@ -0,0 +1,19 @@
+{ lib, fetchurl, buildDunePackage, qcheck, qcheck-alcotest, alcotest }:
+
+buildDunePackage rec {
+  pname = "seqes";
+  version = "0.2";
+  src = fetchurl {
+    url = "https://gitlab.com/nomadic-labs/seqes/-/archive/${version}/seqes-${version}.tar.gz";
+    sha256 = "sha256-IxLA0jaIPdX9Zn/GL8UHDJYjA1UBW6leGbZmp64YMjI=";
+  };
+
+  checkInputs = [ qcheck qcheck-alcotest alcotest ];
+
+  meta = with lib; {
+    description = "Variations of the Seq module with monads folded into the type";
+    homepage = "https://gitlab.com/nomadic-labs/seqes";
+    license = licenses.lgpl2; # Same as OCaml
+    maintainers = [ maintainers.ulrikstrid ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/default.nix b/pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/default.nix
deleted file mode 100644
index 2d5c5c27494b..000000000000
--- a/pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib
-, fetchFromGitLab
-, buildDunePackage
-, bls12-381
-, data-encoding
-, bigstringaf
-, alcotest
-, alcotest-lwt
-, bisect_ppx
-, qcheck-alcotest
-, ppx_repr
-}:
-
-buildDunePackage rec {
-  pname = "tezos-bls12-381-polynomial";
-  version = "1.0.1";
-  duneVersion = "3";
-  src = fetchFromGitLab {
-    owner = "nomadic-labs/cryptography";
-    repo = "privacy-team";
-    rev = "v${version}";
-    sha256 = "sha256-5qDa/fQoTypjaceQ0MBzt0rM+0hSJcpGlXMGAZKRboo=";
-  };
-
-  propagatedBuildInputs = [ ppx_repr bls12-381 data-encoding bigstringaf ];
-
-  checkInputs = [ alcotest alcotest-lwt bisect_ppx qcheck-alcotest ];
-
-  doCheck = false; # circular dependencies
-
-  meta = {
-    description = "Polynomials over BLS12-381 finite field";
-    license = lib.licenses.mit;
-    homepage = "https://gitlab.com/nomadic-labs/privacy-team";
-    maintainers = [ lib.maintainers.ulrikstrid ];
-  };
-}
diff --git a/pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/plompiler.nix b/pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/plompiler.nix
deleted file mode 100644
index 62ddb432e47f..000000000000
--- a/pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/plompiler.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ lib
-, buildDunePackage
-, hacl-star
-, bls12-381
-, bls12-381-hash
-, tezos-bls12-381-polynomial
-, polynomial
-, data-encoding
-, hex
-, stdint
-, ff
-, mec
-, alcotest
-, qcheck-alcotest
-, bisect_ppx
-}:
-
-buildDunePackage rec {
-  pname = "tezos-plompiler";
-  duneVersion = "3";
-
-  inherit (tezos-bls12-381-polynomial) version src;
-
-  propagatedBuildInputs = [
-    hacl-star
-    bls12-381
-    bls12-381-hash
-    tezos-bls12-381-polynomial
-    data-encoding
-    hex
-    stdint
-    ff
-    mec
-    polynomial
-  ];
-
-  checkInputs = [ alcotest qcheck-alcotest bisect_ppx ];
-
-  doCheck = false; # circular deps
-
-  meta = tezos-bls12-381-polynomial.meta // {
-    description = "Library to write arithmetic circuits for Plonk";
-  };
-}
diff --git a/pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/plonk.nix b/pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/plonk.nix
deleted file mode 100644
index f9b78e11d332..000000000000
--- a/pkgs/development/ocaml-modules/tezos-bls12-381-polynomial/plonk.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib
-, buildDunePackage
-, hacl-star
-, bls12-381
-, tezos-bls12-381-polynomial
-, data-encoding
-, tezos-plompiler
-, alcotest
-, qcheck-alcotest
-, bisect_ppx
-,
-}:
-
-buildDunePackage rec {
-  pname = "tezos-plonk";
-  duneVersion = "3";
-
-  inherit (tezos-bls12-381-polynomial) version src;
-
-  propagatedBuildInputs = [
-    hacl-star
-    bls12-381
-    tezos-bls12-381-polynomial
-    data-encoding
-    tezos-plompiler
-  ];
-
-  checkInputs = [ alcotest qcheck-alcotest bisect_ppx ];
-
-  doCheck = false; # broken
-
-  meta = tezos-bls12-381-polynomial.meta // {
-    description = "Plonk zero-knowledge proving system";
-  };
-}
diff --git a/pkgs/development/python-modules/nextcord/default.nix b/pkgs/development/python-modules/nextcord/default.nix
index 8f77faaab18a..04fa54a28d6a 100644
--- a/pkgs/development/python-modules/nextcord/default.nix
+++ b/pkgs/development/python-modules/nextcord/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "nextcord";
-  version = "2.4.2";
+  version = "2.5.0";
 
   format = "setuptools";
 
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "nextcord";
     repo = "nextcord";
     rev = "refs/tags/v${version}";
-    hash = "sha256-n73F5y922rsu0YFjAwQlUVpSa6Scs/xyfZHREmqKiHU=";
+    hash = "sha256-Oo1C2tasuNIpUaKACbapnoZs7WVS1uncS1akErzQrqI=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/pyblock/default.nix b/pkgs/development/python-modules/pyblock/default.nix
deleted file mode 100644
index 0e94764e4a22..000000000000
--- a/pkgs/development/python-modules/pyblock/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib, stdenv
-, python
-, pkgs
-, isPy3k
-}:
-
-stdenv.mkDerivation rec {
-  pname = "pyblock";
-  version = "0.53";
-  md5_path = "f6d33a8362dee358517d0a9e2ebdd044";
-
-  src = pkgs.fetchurl {
-    url = "https://src.fedoraproject.org/repo/pkgs/python-pyblock/"
-        + "${pname}-${version}.tar.bz2/${md5_path}/${pname}-${version}.tar.bz2";
-    sha256 = "f6cef88969300a6564498557eeea1d8da58acceae238077852ff261a2cb1d815";
-  };
-
-  postPatch = ''
-    sed -i -e 's|/usr/include/python|${python}/include/python|' \
-           -e 's/-Werror *//' -e 's|/usr/|'"$out"'/|' Makefile
-  '';
-
-  buildInputs = [ python pkgs.lvm2 pkgs.dmraid ];
-
-  makeFlags = [
-    "USESELINUX=0"
-    "SITELIB=$(out)/${python.sitePackages}"
-  ];
-
-  meta = with lib; {
-    homepage = "https://www.centos.org/docs/5/html/5.4/Technical_Notes/python-pyblock.html";
-    description = "Interface for working with block devices";
-    license = licenses.gpl2Plus;
-    broken = isPy3k; # doesn't build on python 3, 2018-04-11
-  };
-
-}
diff --git a/pkgs/development/python-modules/pyres/default.nix b/pkgs/development/python-modules/pyres/default.nix
deleted file mode 100644
index 4aeccc1d360a..000000000000
--- a/pkgs/development/python-modules/pyres/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib, stdenv, fetchPypi, buildPythonPackage, fetchFromGitHub, simplejson, redis, setproctitle, nose, pkgs }:
-
-buildPythonPackage rec {
-  pname = "pyres";
-  version = "1.5";
-
-  propagatedBuildInputs = [ simplejson setproctitle redis pkgs.ps ];
-  nativeCheckInputs = [ nose pkgs.redis ];
-
-  # PyPI tarball doesn't contain tests so let's use GitHub
-  src = fetchFromGitHub {
-    owner = "binarydud";
-    repo = pname;
-    rev = version;
-    sha256 = "1rkpv7gbjxl9h9g7kncmsrgmi77l7pgfq8d7dbnsr3ia2jmjqb8y";
-  };
-
-  # started redis-server makes this hang on darwin
-  doCheck = !stdenv.isDarwin;
-
-  checkPhase = ''
-    redis-server &
-    nosetests . --exclude test_worker_pids
-  '';
-
-  meta = with lib; {
-    description = "Python resque clone";
-    homepage = "https://github.com/binarydud/pyres";
-    license = licenses.mit;
-    maintainers = with maintainers; [ jluttine ];
-    broken = true; # not compatible with latest redis
-  };
-}
diff --git a/pkgs/development/python-modules/requests-futures/default.nix b/pkgs/development/python-modules/requests-futures/default.nix
index cc6eb312431e..b2f1aab46988 100644
--- a/pkgs/development/python-modules/requests-futures/default.nix
+++ b/pkgs/development/python-modules/requests-futures/default.nix
@@ -1,24 +1,37 @@
-{ buildPythonPackage, fetchPypi, requests, lib }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pythonOlder
+, requests
+}:
 
 buildPythonPackage rec {
   pname = "requests-futures";
-  version = "1.0.0";
+  version = "1.0.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "35547502bf1958044716a03a2f47092a89efe8f9789ab0c4c528d9c9c30bc148";
+    sha256 = "sha256-9VpO+ABw4oWOfR5zEj0r+uryW5P9NDhNjd8UjitnY3M=";
   };
 
-  propagatedBuildInputs = [ requests ];
+  propagatedBuildInputs = [
+    requests
+  ];
 
-  # tests are disabled because they require being online
+  # Tests are disabled because they require being online
   doCheck = false;
 
-  pythonImportsCheck = [ "requests_futures" ];
+  pythonImportsCheck = [
+    "requests_futures"
+  ];
 
   meta = with lib; {
     description = "Asynchronous Python HTTP Requests for Humans using Futures";
     homepage = "https://github.com/ross/requests-futures";
+    changelog = "https://github.com/ross/requests-futures/blob/v${version}/CHANGELOG.md";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ applePrincess ];
   };
diff --git a/pkgs/development/python-modules/zake/default.nix b/pkgs/development/python-modules/zake/default.nix
deleted file mode 100644
index a9a5902b4c06..000000000000
--- a/pkgs/development/python-modules/zake/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, kazoo
-, six
-, testtools
-, unittestCheckHook
-}:
-
-buildPythonPackage rec {
-  pname = "zake";
-  version = "0.2.2";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1rp4xxy7qp0s0wnq3ig4ji8xsl31g901qkdp339ndxn466cqal2s";
-  };
-
-  propagatedBuildInputs = [ kazoo six ];
-  buildInputs = [ testtools ];
-  nativeCheckInputs = [ unittestCheckHook ];
-  preCheck = ''
-    # Skip test - fails with our new kazoo version
-    substituteInPlace zake/tests/test_client.py \
-      --replace "test_child_watch_no_create" "_test_child_watch_no_create"
-  '';
-
-  unittestFlagsArray = [ "zake/tests" ];
-
-  meta = with lib; {
-    homepage = "https://github.com/yahoo/Zake";
-    description = "A python package that works to provide a nice set of testing utilities for the kazoo library";
-    license = licenses.asl20;
-    broken = true;
-  };
-
-}
diff --git a/pkgs/development/tools/database/schemaspy/default.nix b/pkgs/development/tools/database/schemaspy/default.nix
index 8c7a90b70544..8f17e16122ec 100644
--- a/pkgs/development/tools/database/schemaspy/default.nix
+++ b/pkgs/development/tools/database/schemaspy/default.nix
@@ -29,7 +29,7 @@ javaPackages.mavenfod rec {
       maven
     ];
   };
-  mvnHash = "sha256-udjk5YlTK+Mm8weDhesK6X7qZn4w9HbKZ821SyWxsOE=";
+  mvnHash = "sha256-1x6cNt6t3FnjRNg8iNYflkyDnuPFXGKoxhVJWoz2jIU=";
 
   nativeBuildInputs = [
     makeWrapper
diff --git a/pkgs/development/tools/global-platform-pro/default.nix b/pkgs/development/tools/global-platform-pro/default.nix
index a8e9b957d27a..229d47a8ec73 100644
--- a/pkgs/development/tools/global-platform-pro/default.nix
+++ b/pkgs/development/tools/global-platform-pro/default.nix
@@ -1,8 +1,13 @@
-{ lib, stdenv, fetchFromGitHub, jdk8, maven, makeWrapper, jre8_headless, pcsclite }:
+{ lib, javaPackages, fetchFromGitHub, jdk8, maven, makeWrapper, jre8_headless, pcsclite }:
 
-let jdk = jdk8; jre_headless = jre8_headless; in
-# TODO: This is quite a bit of duplicated logic with gephi. Factor it out?
-stdenv.mkDerivation rec {
+let
+  mavenJdk8 = maven.override {
+    jdk = jdk8;
+  };
+in
+(javaPackages.mavenfod.override {
+  maven = mavenJdk8;
+}) rec {
   pname = "global-platform-pro";
   version = "18.09.14";
   GPPRO_VERSION = "18.09.14-0-gb439b52"; # git describe --tags --always --long --dirty
@@ -14,39 +19,14 @@ stdenv.mkDerivation rec {
     sha256 = "1vws6cbgm3mrwc2xz9j1y262vw21x3hjc9m7rqc4hn3m7gjpwsvg";
   };
 
-  deps = stdenv.mkDerivation {
-    name = "${pname}-${version}-deps";
-    inherit src;
-    nativeBuildInputs = [ jdk maven ];
-    installPhase = ''
-      # Download the dependencies
-      while ! mvn package "-Dmaven.repo.local=$out/.m2" -Dmaven.wagon.rto=5000; do
-        echo "timeout, restart maven to continue downloading"
-      done
-
-      # And keep only *.{pom,jar,sha1,nbm} and delete all ephemeral files
-      # with lastModified timestamps inside
-      find "$out/.m2" -type f \
-        -regex '.+\(\.lastUpdated\|resolver-status\.properties\|_remote\.repositories\)' \
-        -delete
-    '';
-    outputHashAlgo = "sha256";
-    outputHashMode = "recursive";
-    outputHash = "sha256-rRLsCTY3fEAvGRDvNXqpjac2Gb5fdlyhK2wTK5CVN9k=";
-  };
-
-  nativeBuildInputs = [ jdk maven makeWrapper ];
+  mvnHash = "sha256-rRLsCTY3fEAvGRDvNXqpjac2Gb5fdlyhK2wTK5CVN9k=";
 
-  buildPhase = ''
-    cp -dpR "${deps}/.m2" ./
-    chmod -R +w .m2
-    mvn package --offline -Dmaven.repo.local="$(pwd)/.m2"
-  '';
+  nativeBuildInputs = [ jdk8 mavenJdk8 makeWrapper ];
 
   installPhase = ''
     mkdir -p "$out/lib/java" "$out/share/java"
     cp target/gp.jar "$out/share/java"
-    makeWrapper "${jre_headless}/bin/java" "$out/bin/gp" \
+    makeWrapper "${jre8_headless}/bin/java" "$out/bin/gp" \
       --add-flags "-jar '$out/share/java/gp.jar'" \
       --prefix LD_LIBRARY_PATH : "${pcsclite.out}/lib"
   '';
diff --git a/pkgs/development/tools/language-servers/millet/Cargo.lock b/pkgs/development/tools/language-servers/millet/Cargo.lock
index f714ed150a05..e73d639afa21 100644
--- a/pkgs/development/tools/language-servers/millet/Cargo.lock
+++ b/pkgs/development/tools/language-servers/millet/Cargo.lock
@@ -28,7 +28,7 @@ dependencies = [
 
 [[package]]
 name = "analysis"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "config",
  "diagnostic",
@@ -108,7 +108,7 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "chain-map"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "fast-hash",
  "str-util",
@@ -121,7 +121,7 @@ source = "git+https://github.com/azdavis/language-util.git#13b015c6a11357b2b9a7e
 
 [[package]]
 name = "cm-syntax"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "lex-util",
  "paths",
@@ -150,7 +150,7 @@ dependencies = [
 
 [[package]]
 name = "config"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "fast-hash",
  "serde",
@@ -178,7 +178,7 @@ checksum = "7704b5fdd17b18ae31c4c1da5a2e0305a2bf17b5249300a9ee9ed7b72114c636"
 
 [[package]]
 name = "cov-mark"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "fast-hash",
  "once_cell",
@@ -403,7 +403,7 @@ dependencies = [
 
 [[package]]
 name = "input"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "cm-syntax",
  "config",
@@ -463,7 +463,7 @@ checksum = "1dabfe0d01e15fde0eba33b9de62475c59e681a47ce4ffe0534af2577a3f8524"
 
 [[package]]
 name = "lang-srv"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "analysis",
  "anyhow",
@@ -491,7 +491,7 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
 name = "lex-util"
-version = "0.11.0"
+version = "0.11.1"
 
 [[package]]
 name = "libc"
@@ -566,7 +566,7 @@ dependencies = [
 
 [[package]]
 name = "millet-cli"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "analysis",
  "codespan-reporting",
@@ -584,7 +584,7 @@ dependencies = [
 
 [[package]]
 name = "millet-ls"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "anyhow",
  "env_logger",
@@ -613,7 +613,7 @@ dependencies = [
 
 [[package]]
 name = "mlb-hir"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "fast-hash",
  "paths",
@@ -624,7 +624,7 @@ dependencies = [
 
 [[package]]
 name = "mlb-statics"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "config",
  "diagnostic",
@@ -648,7 +648,7 @@ dependencies = [
 
 [[package]]
 name = "mlb-syntax"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "lex-util",
  "paths",
@@ -720,7 +720,7 @@ dependencies = [
 
 [[package]]
 name = "panic-hook"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "better-panic",
 ]
@@ -914,7 +914,7 @@ dependencies = [
 
 [[package]]
 name = "slash-var-path"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "fast-hash",
  "str-util",
@@ -922,14 +922,14 @@ dependencies = [
 
 [[package]]
 name = "sml-comment"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "sml-syntax",
 ]
 
 [[package]]
 name = "sml-dynamics"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "fast-hash",
  "fmt-util",
@@ -940,7 +940,7 @@ dependencies = [
 
 [[package]]
 name = "sml-dynamics-tests"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "config",
  "sml-dynamics",
@@ -955,7 +955,7 @@ dependencies = [
 
 [[package]]
 name = "sml-file-syntax"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "config",
  "elapsed",
@@ -969,7 +969,7 @@ dependencies = [
 
 [[package]]
 name = "sml-fixity"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "fast-hash",
  "once_cell",
@@ -978,7 +978,7 @@ dependencies = [
 
 [[package]]
 name = "sml-hir"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "la-arena",
  "sml-lab",
@@ -989,7 +989,7 @@ dependencies = [
 
 [[package]]
 name = "sml-hir-lower"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "config",
  "cov-mark",
@@ -1004,14 +1004,14 @@ dependencies = [
 
 [[package]]
 name = "sml-lab"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "str-util",
 ]
 
 [[package]]
 name = "sml-lex"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "cov-mark",
  "diagnostic",
@@ -1026,7 +1026,7 @@ source = "git+https://github.com/azdavis/sml-libs.git#7ae671a607a143fd8529e34019
 
 [[package]]
 name = "sml-naive-fmt"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "fast-hash",
  "sml-comment",
@@ -1035,11 +1035,11 @@ dependencies = [
 
 [[package]]
 name = "sml-namespace"
-version = "0.11.0"
+version = "0.11.1"
 
 [[package]]
 name = "sml-parse"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "diagnostic",
  "event-parse",
@@ -1051,14 +1051,14 @@ dependencies = [
 
 [[package]]
 name = "sml-path"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "str-util",
 ]
 
 [[package]]
 name = "sml-scon"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "num-bigint",
  "num-traits",
@@ -1067,7 +1067,7 @@ dependencies = [
 
 [[package]]
 name = "sml-statics"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "chain-map",
  "config",
@@ -1090,7 +1090,7 @@ dependencies = [
 
 [[package]]
 name = "sml-statics-types"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "chain-map",
  "code-h2-md-map",
@@ -1108,7 +1108,7 @@ dependencies = [
 
 [[package]]
 name = "sml-symbol-kind"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "sml-namespace",
  "sml-statics-types",
@@ -1116,7 +1116,7 @@ dependencies = [
 
 [[package]]
 name = "sml-syntax"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "char-name",
  "code-h2-md-map",
@@ -1129,7 +1129,7 @@ dependencies = [
 
 [[package]]
 name = "sml-ty-var-scope"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "fast-hash",
  "sml-hir",
@@ -1197,7 +1197,7 @@ dependencies = [
 
 [[package]]
 name = "tests"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "analysis",
  "cm-syntax",
@@ -1532,7 +1532,7 @@ dependencies = [
 
 [[package]]
 name = "xtask"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "anyhow",
  "flate2",
diff --git a/pkgs/development/tools/language-servers/millet/default.nix b/pkgs/development/tools/language-servers/millet/default.nix
index 7698ad33fd4e..47d2a39ca38e 100644
--- a/pkgs/development/tools/language-servers/millet/default.nix
+++ b/pkgs/development/tools/language-servers/millet/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "millet";
-  version = "0.11.0";
+  version = "0.11.1";
 
   src = fetchFromGitHub {
     owner = "azdavis";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-laRJLOZQUGAaAo+2sw7zl89JeKs9yQcnfiifzWSDoFU=";
+    hash = "sha256-OfXwrESYwJ1rAcL8q2OlYhMom4iiYJ5N//a3TIp4FwY=";
   };
 
   cargoLock = {