about summary refs log tree commit diff
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2024-06-09 12:01:06 +0000
committerGitHub <noreply@github.com>2024-06-09 12:01:06 +0000
commit668adff0d461761b91d24f755dcd0b52ec83cd5a (patch)
treeabf0c7f8d779d91525218015822fa23c37138524
parentb45d7259e501e43e6234dc5985a61b379ef46ad9 (diff)
parent7cf6063c54d484a6fc9a575b479e368c7116c068 (diff)
Merge master into staging-next
-rw-r--r--nixos/doc/manual/development/running-nixos-tests-interactively.section.md2
-rw-r--r--nixos/modules/services/monitoring/zabbix-proxy.nix2
-rw-r--r--nixos/tests/ladybird.nix4
-rw-r--r--pkgs/applications/editors/vim/default.nix10
-rw-r--r--pkgs/applications/editors/vscode/extensions/default.nix8
-rw-r--r--pkgs/applications/networking/browsers/ladybird/default.nix20
-rw-r--r--pkgs/applications/science/medicine/xmedcon/default.nix4
-rw-r--r--pkgs/applications/version-management/git/default.nix3
-rw-r--r--pkgs/by-name/hu/hugo/package.nix6
-rw-r--r--pkgs/by-name/ja/jazz2/package.nix4
-rw-r--r--pkgs/by-name/ma/maa-assistant-arknights/fastdeploy-ppocr.nix77
-rw-r--r--pkgs/by-name/ma/maa-assistant-arknights/package.nix75
-rw-r--r--pkgs/by-name/ma/maa-cli/package.nix52
-rw-r--r--pkgs/by-name/mc/mcdreforged/package.nix49
-rw-r--r--pkgs/by-name/md/md-tui/package.nix45
-rw-r--r--pkgs/by-name/nb/nb-cli/package.nix60
-rw-r--r--pkgs/by-name/nu/nulloy/package.nix4
-rw-r--r--pkgs/by-name/tp/tpnote/package.nix4
-rw-r--r--pkgs/development/interpreters/python/cpython/default.nix7
-rw-r--r--pkgs/development/interpreters/python/cpython/freebsd-cross.patch22
-rw-r--r--pkgs/development/interpreters/ruby/default.nix3
-rw-r--r--pkgs/development/libraries/tkrzw/default.nix4
-rw-r--r--pkgs/development/python-modules/cashews/default.nix70
-rw-r--r--pkgs/development/python-modules/inequality/default.nix45
-rw-r--r--pkgs/development/python-modules/matplotlib-venn/default.nix40
-rw-r--r--pkgs/development/python-modules/momepy/default.nix57
-rw-r--r--pkgs/development/python-modules/noneprompt/default.nix39
-rw-r--r--pkgs/development/python-modules/pydy/default.nix16
-rw-r--r--pkgs/development/python-modules/pypdf2/default.nix10
-rw-r--r--pkgs/development/python-modules/stone/default.nix25
-rw-r--r--pkgs/development/python-modules/torch/default.nix1
-rw-r--r--pkgs/development/tools/misc/gdb/default.nix2
-rw-r--r--pkgs/tools/audio/abcmidi/default.nix4
-rw-r--r--pkgs/tools/networking/dhcpcd/default.nix11
-rw-r--r--pkgs/tools/security/zmap/default.nix8
-rw-r--r--pkgs/top-level/python-packages.nix10
36 files changed, 661 insertions, 142 deletions
diff --git a/nixos/doc/manual/development/running-nixos-tests-interactively.section.md b/nixos/doc/manual/development/running-nixos-tests-interactively.section.md
index 4b8385d7e0d94..422dbf174ad56 100644
--- a/nixos/doc/manual/development/running-nixos-tests-interactively.section.md
+++ b/nixos/doc/manual/development/running-nixos-tests-interactively.section.md
@@ -44,7 +44,7 @@ As an alternative, you can proxy the guest shell to a local TCP server by first
 starting a TCP server in a terminal using the command:
 
 ```ShellSession
-$ socat 'READLINE,PROMPT=$ ' tcp-listen:4444,reuseaddr`
+$ socat 'READLINE,PROMPT=$ ' tcp-listen:4444,reuseaddr
 ```
 
 In the terminal where the test driver is running, connect to this server by
diff --git a/nixos/modules/services/monitoring/zabbix-proxy.nix b/nixos/modules/services/monitoring/zabbix-proxy.nix
index 7fa471b6404a8..dec403df85ea8 100644
--- a/nixos/modules/services/monitoring/zabbix-proxy.nix
+++ b/nixos/modules/services/monitoring/zabbix-proxy.nix
@@ -103,7 +103,7 @@ in
 
         port = mkOption {
           type = types.port;
-          default = if cfg.database.type == "mysql" then mysql.port else pgsql.services.port;
+          default = if cfg.database.type == "mysql" then mysql.port else pgsql.settings.port;
           defaultText = literalExpression ''
             if config.${opt.database.type} == "mysql"
             then config.${options.services.mysql.port}
diff --git a/nixos/tests/ladybird.nix b/nixos/tests/ladybird.nix
index 8ed0f47887c7d..85c23353a668a 100644
--- a/nixos/tests/ladybird.nix
+++ b/nixos/tests/ladybird.nix
@@ -10,9 +10,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
     ];
 
     services.xserver.enable = true;
-    environment.systemPackages = [
-      pkgs.ladybird
-    ];
+    programs.ladybird.enable = true;
   };
 
   enableOCR = true;
diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix
index d04fa241ba73f..b9c5f4ff7bbcc 100644
--- a/pkgs/applications/editors/vim/default.nix
+++ b/pkgs/applications/editors/vim/default.nix
@@ -26,18 +26,22 @@ stdenv.mkDerivation {
   configureFlags = [
     "--enable-multibyte"
     "--enable-nls"
-  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+  ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) ([
     "vim_cv_toupper_broken=no"
     "--with-tlib=ncurses"
     "vim_cv_terminfo=yes"
     "vim_cv_tgetent=zero" # it does on native anyway
-    "vim_cv_timer_create=yes"
     "vim_cv_tty_group=tty"
     "vim_cv_tty_mode=0660"
     "vim_cv_getcwd_broken=no"
     "vim_cv_stat_ignores_slash=yes"
     "vim_cv_memmove_handles_overlap=yes"
-  ];
+  ] ++ lib.optionals stdenv.hostPlatform.isFreeBSD [
+    "vim_cv_timer_create=no"
+    "vim_cv_timer_create_with_lrt=yes"
+  ] ++ lib.optionals (!stdenv.hostPlatform.isFreeBSD) [
+    "vim_cv_timer_create=yes"
+  ]);
 
   # which.sh is used to for vim's own shebang patching, so make it find
   # binaries for the host platform.
diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix
index a05bb510c6eb5..9f8b59a37f335 100644
--- a/pkgs/applications/editors/vscode/extensions/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/default.nix
@@ -1820,8 +1820,8 @@ let
         mktplcRef = {
           publisher = "github";
           name = "copilot";
-          version = "1.180.827";
-          hash = "sha256-HA1na9FoExIiAay+tEjxWKqpG2+wq4Oww77Gl2Bhciw=";
+          version = "1.200.920";
+          hash = "sha256-LMShW9GN/wsDBodVn33Ui4qW0619r13VO2rSTPVE9TQ=";
         };
 
         meta = {
@@ -1837,8 +1837,8 @@ let
         mktplcRef = {
           publisher = "github";
           name = "copilot-chat";
-          version = "0.14.2024032901"; # compatible with vscode 1.88.1
-          hash = "sha256-+6N7IGO5j0wP5Zg8CwapHeKGWiZzc43VM4jCtqJDJIQ=";
+          version = "0.16.2024060502"; # compatible with vscode 1.90.0
+          hash = "sha256-SAydDc3JlJzfCtbJICy3rWx8psVPdRdPfOuzR9Dqtp8=";
         };
         meta = {
           description = "GitHub Copilot Chat is a companion extension to GitHub Copilot that houses experimental chat features";
diff --git a/pkgs/applications/networking/browsers/ladybird/default.nix b/pkgs/applications/networking/browsers/ladybird/default.nix
index db00c8754791e..98b99e17f93db 100644
--- a/pkgs/applications/networking/browsers/ladybird/default.nix
+++ b/pkgs/applications/networking/browsers/ladybird/default.nix
@@ -50,13 +50,13 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "ladybird";
-  version = "0-unstable-2024-05-26";
+  version = "0-unstable-2024-06-04";
 
   src = fetchFromGitHub {
-    owner = "SerenityOS";
-    repo = "serenity";
-    rev = "1a9d8e8fbe360f2d3b376ca0e13c507bd2cc6e8b";
-    hash = "sha256-+g/1F/v8nTVbvtSrtyvQbeYacjTlfRpg+Htu0lRlkcU=";
+    owner = "LadybirdWebBrowser";
+    repo = "ladybird";
+    rev = "c6e9f0e7b5b050ddbb5d735ca9c65458add9b4a5";
+    hash = "sha256-+NDrd0kO9bqXFcCEJFmNwNu5jmf+wT+uUVlmbmCYLw4=";
   };
 
   patches = [
@@ -64,7 +64,7 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   postPatch = ''
-    sed -i '/iconutil/d' CMakeLists.txt
+    sed -i '/iconutil/d' Ladybird/CMakeLists.txt
 
     # Don't set absolute paths in RPATH
     substituteInPlace Meta/CMake/lagom_install_options.cmake \
@@ -73,16 +73,14 @@ stdenv.mkDerivation (finalAttrs: {
   '';
 
   preConfigure = ''
-    cd Ladybird
-
     # Setup caches for LibLocale, LibUnicode, LibTimezone, LibTLS and LibGfx
     # Note that the versions of the input data packages must match the
     # expected version in the package's CMake.
 
     # Check that the versions match
-    grep -F 'set(CLDR_VERSION "${cldr_version}")' ../Meta/CMake/locale_data.cmake || (echo cldr_version mismatch && exit 1)
-    grep -F 'set(TZDB_VERSION "${tzdata.version}")' ../Meta/CMake/time_zone_data.cmake || (echo tzdata.version mismatch && exit 1)
-    grep -F 'set(CACERT_VERSION "${cacert_version}")' ../Meta/CMake/ca_certificates_data.cmake || (echo cacert_version mismatch && exit 1)
+    grep -F 'set(CLDR_VERSION "${cldr_version}")' Meta/CMake/locale_data.cmake || (echo cldr_version mismatch && exit 1)
+    grep -F 'set(TZDB_VERSION "${tzdata.version}")' Meta/CMake/time_zone_data.cmake || (echo tzdata.version mismatch && exit 1)
+    grep -F 'set(CACERT_VERSION "${cacert_version}")' Meta/CMake/ca_certificates_data.cmake || (echo cacert_version mismatch && exit 1)
 
     mkdir -p build/Caches
 
diff --git a/pkgs/applications/science/medicine/xmedcon/default.nix b/pkgs/applications/science/medicine/xmedcon/default.nix
index e5c5bf68d53a7..1a17880b6ecd3 100644
--- a/pkgs/applications/science/medicine/xmedcon/default.nix
+++ b/pkgs/applications/science/medicine/xmedcon/default.nix
@@ -11,11 +11,11 @@
 
 stdenv.mkDerivation rec {
   pname = "xmedcon";
-  version = "0.23.0";
+  version = "0.24.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-g1CRJDokLDzB+1YIuVQNByBLx01CI47EwGeluqVDujk=";
+    sha256 = "sha256-9NAAXGEVgpVPS7MB8FubnYUpkihE3lET/gep8QfPhB0=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/version-management/git/default.nix b/pkgs/applications/version-management/git/default.nix
index d7f738adee514..d7e008d656fde 100644
--- a/pkgs/applications/version-management/git/default.nix
+++ b/pkgs/applications/version-management/git/default.nix
@@ -121,7 +121,8 @@ stdenv.mkDerivation (finalAttrs: {
   # acceptable version.
   #
   # See https://github.com/Homebrew/homebrew-core/commit/dfa3ccf1e7d3901e371b5140b935839ba9d8b706
-  ++ lib.optional stdenv.isDarwin "TKFRAMEWORK=/nonexistent";
+  ++ lib.optional stdenv.isDarwin "TKFRAMEWORK=/nonexistent"
+  ++ lib.optional (stdenv.hostPlatform.isFreeBSD && stdenv.hostPlatform != stdenv.buildPlatform) "uname_S=FreeBSD";
 
   disallowedReferences = lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
     stdenv.shellPackage
diff --git a/pkgs/by-name/hu/hugo/package.nix b/pkgs/by-name/hu/hugo/package.nix
index 5bc5c26b0f353..05ad9a16dcc83 100644
--- a/pkgs/by-name/hu/hugo/package.nix
+++ b/pkgs/by-name/hu/hugo/package.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "hugo";
-  version = "0.126.3";
+  version = "0.127.0";
 
   src = fetchFromGitHub {
     owner = "gohugoio";
     repo = "hugo";
     rev = "refs/tags/v${version}";
-    hash = "sha256-WWpcbY8KA/62AeIt1hH+xfgEoPle4hfH+/K7I+1xdEc=";
+    hash = "sha256-QAZP119VOPTnVXe2mtzCpB3OW/g73oA/qwR94OzISKo=";
   };
 
-  vendorHash = "sha256-VfwiA5LCAJ1pkmMCy/Dcc5bLKkNY1MHtxHcHvKLoWHs=";
+  vendorHash = "sha256-Og7FTCrto1l+Xpfr2zEgg/yXa7dflws0yJ2Xh9f3mbI=";
 
   doCheck = false;
 
diff --git a/pkgs/by-name/ja/jazz2/package.nix b/pkgs/by-name/ja/jazz2/package.nix
index 0bd4238bf214c..be823ade33df8 100644
--- a/pkgs/by-name/ja/jazz2/package.nix
+++ b/pkgs/by-name/ja/jazz2/package.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "jazz2";
-  version = "2.6.0";
+  version = "2.7.0";
 
   src = fetchFromGitHub {
     owner = "deathkiller";
     repo = "jazz2-native";
     rev = finalAttrs.version;
-    hash = "sha256-ZTQz6+2myUIJr2HqiwYksM7qiwXrd4+3+h1TC6FuPFU=";
+    hash = "sha256-iy5b5h6wpOlubtOwBs0X7P0wBD3QeAQwjMhgnd4YP+Q=";
   };
 
   patches = [ ./nocontent.patch ];
diff --git a/pkgs/by-name/ma/maa-assistant-arknights/fastdeploy-ppocr.nix b/pkgs/by-name/ma/maa-assistant-arknights/fastdeploy-ppocr.nix
index 8cd3d355091e6..53ac9fa3bfc11 100644
--- a/pkgs/by-name/ma/maa-assistant-arknights/fastdeploy-ppocr.nix
+++ b/pkgs/by-name/ma/maa-assistant-arknights/fastdeploy-ppocr.nix
@@ -1,14 +1,15 @@
-{ stdenv
-, config
-, pkgs
-, lib
-, fetchFromGitHub
-, cmake
-, eigen
-, onnxruntime
-, opencv
-, cudaSupport ? config.cudaSupport
-, cudaPackages ? { }
+{
+  stdenv,
+  config,
+  pkgs,
+  lib,
+  fetchFromGitHub,
+  cmake,
+  eigen,
+  onnxruntime,
+  opencv,
+  cudaSupport ? config.cudaSupport,
+  cudaPackages ? { },
 }@inputs:
 
 let
@@ -30,34 +31,42 @@ effectiveStdenv.mkDerivation (finalAttrs: {
     hash = "sha256-5TItnPDc5WShpZAgBYeqgI9KKkk3qw/M8HPMlq/H4BM=";
   };
 
-  outputs = [ "out" "cmake" ];
+  outputs = [
+    "out"
+    "cmake"
+  ];
 
   nativeBuildInputs = [
     cmake
     eigen
-  ] ++ lib.optionals cudaSupport [
-    cudaPackages.cuda_nvcc
-  ];
+  ] ++ lib.optionals cudaSupport [ cudaPackages.cuda_nvcc ];
 
-  buildInputs = [
-    onnxruntime
-    opencv
-  ] ++ lib.optionals cudaSupport (with cudaPackages; [
-    cuda_cccl # cub/cub.cuh
-    libcublas # cublas_v2.h
-    libcurand # curand.h
-    libcusparse # cusparse.h
-    libcufft # cufft.h
-    cudnn # cudnn.h
-    cuda_cudart
-  ]);
+  buildInputs =
+    [
+      onnxruntime
+      opencv
+    ]
+    ++ lib.optionals cudaSupport (
+      with cudaPackages;
+      [
+        cuda_cccl # cub/cub.cuh
+        libcublas # cublas_v2.h
+        libcurand # curand.h
+        libcusparse # cusparse.h
+        libcufft # cufft.h
+        cudnn # cudnn.h
+        cuda_cudart
+      ]
+    );
 
-  cmakeFlags = [
-    (lib.cmakeFeature "CMAKE_BUILD_TYPE" "None")
-    (lib.cmakeBool "BUILD_SHARED_LIBS" true)
-  ] ++ lib.optionals cudaSupport [
-    (lib.cmakeFeature "CMAKE_CUDA_ARCHITECTURES" cudaArchitecturesString)
-  ];
+  cmakeFlags =
+    [
+      (lib.cmakeFeature "CMAKE_BUILD_TYPE" "None")
+      (lib.cmakeBool "BUILD_SHARED_LIBS" true)
+    ]
+    ++ lib.optionals cudaSupport [
+      (lib.cmakeFeature "CMAKE_CUDA_ARCHITECTURES" cudaArchitecturesString)
+    ];
 
   postInstall = ''
     mkdir $cmake
@@ -67,7 +76,7 @@ effectiveStdenv.mkDerivation (finalAttrs: {
   meta = with lib; {
     description = "MaaAssistantArknights stripped-down version of FastDeploy";
     homepage = "https://github.com/MaaAssistantArknights/FastDeploy";
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.darwin;
     license = licenses.asl20;
     broken = cudaSupport && stdenv.hostPlatform.system != "x86_64-linux";
   };
diff --git a/pkgs/by-name/ma/maa-assistant-arknights/package.nix b/pkgs/by-name/ma/maa-assistant-arknights/package.nix
index de41a0e03f5af..f6e5818e8bd66 100644
--- a/pkgs/by-name/ma/maa-assistant-arknights/package.nix
+++ b/pkgs/by-name/ma/maa-assistant-arknights/package.nix
@@ -1,24 +1,26 @@
-{ lib
-, config
-, callPackage
-, stdenv
-, fetchFromGitHub
-, asio
-, cmake
-, eigen
-, libcpr
-, onnxruntime
-, opencv
-, isBeta ? false
-, cudaSupport ? config.cudaSupport
-, cudaPackages ? { }
+{
+  lib,
+  config,
+  callPackage,
+  stdenv,
+  overrideSDK,
+  fetchFromGitHub,
+  asio,
+  cmake,
+  libcpr,
+  onnxruntime,
+  opencv,
+  isBeta ? false,
+  cudaSupport ? config.cudaSupport,
+  cudaPackages ? { },
 }:
 
 let
   fastdeploy = callPackage ./fastdeploy-ppocr.nix { };
   sources = lib.importJSON ./pin.json;
 in
-stdenv.mkDerivation (finalAttr: {
+# https://github.com/NixOS/nixpkgs/issues/314160
+(if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv).mkDerivation (finalAttr: {
   pname = "maa-assistant-arknights" + lib.optionalString isBeta "-beta";
   version = if isBeta then sources.beta.version else sources.stable.version;
 
@@ -33,24 +35,27 @@ stdenv.mkDerivation (finalAttr: {
     asio
     cmake
     fastdeploy.cmake
-  ] ++ lib.optionals cudaSupport [
-    cudaPackages.cuda_nvcc
-  ];
+  ] ++ lib.optionals cudaSupport [ cudaPackages.cuda_nvcc ];
 
-  buildInputs = [
-    fastdeploy
-    libcpr
-    onnxruntime
-    opencv
-  ] ++ lib.optionals cudaSupport (with cudaPackages; [
-    cuda_cccl # cub/cub.cuh
-    libcublas # cublas_v2.h
-    libcurand # curand.h
-    libcusparse # cusparse.h
-    libcufft # cufft.h
-    cudnn # cudnn.h
-    cuda_cudart
-  ]);
+  buildInputs =
+    [
+      fastdeploy
+      libcpr
+      onnxruntime
+      opencv
+    ]
+    ++ lib.optionals cudaSupport (
+      with cudaPackages;
+      [
+        cuda_cccl # cub/cub.cuh
+        libcublas # cublas_v2.h
+        libcurand # curand.h
+        libcusparse # cusparse.h
+        libcufft # cufft.h
+        cudnn # cudnn.h
+        cuda_cudart
+      ]
+    );
 
   cmakeFlags = [
     (lib.cmakeBool "BUILD_SHARED_LIBS" true)
@@ -64,6 +69,10 @@ stdenv.mkDerivation (finalAttr: {
 
   passthru.updateScript = ./update.sh;
 
+  postPatch = ''
+    cp -v ${fastdeploy.cmake}/Findonnxruntime.cmake cmake/
+  '';
+
   postInstall = ''
     mkdir -p $out/share/${finalAttr.pname}
     mv $out/{Python,resource} $out/share/${finalAttr.pname}
@@ -74,6 +83,6 @@ stdenv.mkDerivation (finalAttr: {
     homepage = "https://github.com/MaaAssistantArknights/MaaAssistantArknights";
     license = licenses.agpl3Only;
     maintainers = with maintainers; [ Cryolitia ];
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.darwin;
   };
 })
diff --git a/pkgs/by-name/ma/maa-cli/package.nix b/pkgs/by-name/ma/maa-cli/package.nix
index 47949052b883f..1ef59d2fef9f0 100644
--- a/pkgs/by-name/ma/maa-cli/package.nix
+++ b/pkgs/by-name/ma/maa-cli/package.nix
@@ -1,14 +1,16 @@
-{ lib
-, stdenv
-, rustPlatform
-, fetchFromGitHub
-, installShellFiles
-, makeWrapper
-, pkg-config
-, openssl
-, maa-assistant-arknights
-, android-tools
-, git
+{
+  lib,
+  stdenv,
+  rustPlatform,
+  fetchFromGitHub,
+  installShellFiles,
+  makeWrapper,
+  pkg-config,
+  openssl,
+  darwin,
+  maa-assistant-arknights,
+  android-tools,
+  git,
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -28,13 +30,22 @@ rustPlatform.buildRustPackage rec {
     pkg-config
   ];
 
-  buildInputs = [
-    openssl
-  ];
+  buildInputs =
+    [ openssl ]
+    ++ lib.optionals stdenv.isDarwin (
+      with darwin.apple_sdk.frameworks;
+      [
+        Security
+        SystemConfiguration
+      ]
+    );
 
   # https://github.com/MaaAssistantArknights/maa-cli/pull/126
   buildNoDefaultFeatures = true;
-  buildFeatures = [ "git2" "core_installer" ];
+  buildFeatures = [
+    "git2"
+    "core_installer"
+  ];
 
   cargoHash = "sha256-iy9myT3bVW1TXCZx3ddiiDoDXx5BWqeQnSsJ97bc4IA=";
 
@@ -47,9 +58,12 @@ rustPlatform.buildRustPackage rec {
     mv $out/bin/maa $out/share/maa-assistant-arknights/
 
     makeWrapper $out/share/maa-assistant-arknights/maa $out/bin/maa \
-      --prefix PATH : "${lib.makeBinPath [
-        android-tools git
-      ]}"
+      --prefix PATH : "${
+        lib.makeBinPath [
+          android-tools
+          git
+        ]
+      }"
 
     installShellCompletion --cmd maa \
       --bash <($out/bin/maa complete bash) \
@@ -65,7 +79,7 @@ rustPlatform.buildRustPackage rec {
     description = "A simple CLI for MAA by Rust";
     homepage = "https://github.com/MaaAssistantArknights/maa-cli";
     license = licenses.agpl3Only;
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ Cryolitia ];
     mainProgram = "maa";
   };
diff --git a/pkgs/by-name/mc/mcdreforged/package.nix b/pkgs/by-name/mc/mcdreforged/package.nix
new file mode 100644
index 0000000000000..94dae99cedbb4
--- /dev/null
+++ b/pkgs/by-name/mc/mcdreforged/package.nix
@@ -0,0 +1,49 @@
+{
+  lib,
+  fetchFromGitHub,
+  python3,
+  testers,
+  mcdreforged,
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "mcdreforged";
+  version = "2.12.3";
+
+  src = fetchFromGitHub {
+    owner = "Fallen-Breath";
+    repo = "MCDReforged";
+    rev = "refs/tags/v${version}";
+    sha256 = "sha256-MLub++mkkB/jshpHJXtqgIhs7Gcb4jHUyHqGE65S8A8=";
+  };
+
+  disabled = python3.pkgs.pythonOlder "3.8";
+
+  build-system = [ python3.pkgs.setuptools ];
+
+  dependencies = with python3.pkgs; [
+    colorlog
+    colorama
+    packaging
+    parse
+    prompt-toolkit
+    psutil
+    ruamel-yaml
+    typing-extensions
+  ];
+
+  nativeCheckInputs = [ python3.pkgs.pytestCheckHook ];
+
+  passthru.tests = {
+    version = testers.testVersion { package = mcdreforged; };
+  };
+
+  meta = with lib; {
+    description = "A rewritten version of MCDaemon, a python tool to control your Minecraft server";
+    homepage = "https://mcdreforged.com";
+    changelog = "https://github.com/MCDReforged/MCDReforged/releases/tag/v${version}";
+    license = licenses.lgpl3Only;
+    maintainers = with maintainers; [ moraxyc ];
+    mainProgram = "mcdreforged";
+  };
+}
diff --git a/pkgs/by-name/md/md-tui/package.nix b/pkgs/by-name/md/md-tui/package.nix
new file mode 100644
index 0000000000000..6530ed3f4b7fc
--- /dev/null
+++ b/pkgs/by-name/md/md-tui/package.nix
@@ -0,0 +1,45 @@
+{
+  lib,
+  rustPlatform,
+  fetchFromGitHub,
+  pkg-config,
+  stdenv,
+  darwin,
+  nix-update-script,
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "md-tui";
+  version = "0.8.1";
+
+  src = fetchFromGitHub {
+    owner = "henriklovhaug";
+    repo = "md-tui";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-AwJvB1xLsJCr+r0RJi8jH50QlPq7mbUibvmvYZJi9XE=";
+  };
+
+  cargoHash = "sha256-QapogSDuAiQWbCFFwPiaSpvLHn0oRLwBEBuB44MN/t0=";
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.CoreFoundation
+    darwin.apple_sdk.frameworks.CoreServices
+    darwin.apple_sdk.frameworks.Security
+  ];
+
+  passthru = {
+    updateScript = nix-update-script { };
+  };
+
+  meta = {
+    description = "Markdown renderer in the terminal";
+    homepage = "https://github.com/henriklovhaug/md-tui";
+    changelog = "https://github.com/henriklovhaug/md-tui/blob/${src.rev}/CHANGELOG.md";
+    license = lib.licenses.agpl3Only;
+    maintainers = with lib.maintainers; [ GaetanLepage ];
+    platforms = lib.platforms.all;
+    mainProgram = "mdt";
+  };
+}
diff --git a/pkgs/by-name/nb/nb-cli/package.nix b/pkgs/by-name/nb/nb-cli/package.nix
new file mode 100644
index 0000000000000..5362c16e3ae2a
--- /dev/null
+++ b/pkgs/by-name/nb/nb-cli/package.nix
@@ -0,0 +1,60 @@
+{
+  fetchPypi,
+  lib,
+  nb-cli,
+  python3,
+  testers,
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "nb-cli";
+  version = "1.4.1";
+  pyproject = true;
+
+  src = fetchPypi {
+    pname = "nb_cli";
+    inherit version;
+    hash = "sha256-kI3Uy79mv0b+h5wjrRN3My9jOFzryhkStieqaG0YFvM=";
+  };
+
+  build-system = [
+    python3.pkgs.babel
+    python3.pkgs.pdm-backend
+  ];
+
+  dependencies = with python3.pkgs; [
+    anyio
+    cashews
+    click
+    cookiecutter
+    httpx
+    importlib-metadata
+    jinja2
+    noneprompt
+    pydantic
+    pyfiglet
+    tomlkit
+    typing-extensions
+    virtualenv
+    watchfiles
+    wcwidth
+  ];
+
+  # no test
+  doCheck = false;
+
+  pythonImportsCheck = [ "nb_cli" ];
+
+  passthru.tests = {
+    version = testers.testVersion { package = nb-cli; };
+  };
+
+  meta = {
+    description = "CLI for nonebot2";
+    homepage = "https://cli.nonebot.dev";
+    changelog = "https://github.com/nonebot/nb-cli/releases/tag/v${version}";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ moraxyc ];
+    mainProgram = "nb";
+  };
+}
diff --git a/pkgs/by-name/nu/nulloy/package.nix b/pkgs/by-name/nu/nulloy/package.nix
index 57ff0eb60ff05..fbc8d093635fe 100644
--- a/pkgs/by-name/nu/nulloy/package.nix
+++ b/pkgs/by-name/nu/nulloy/package.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nulloy";
-  version = "0.9.8.7";
+  version = "0.9.9";
 
   src = fetchFromGitHub {
     owner = "nulloy";
     repo = "nulloy";
     rev = version;
-    hash = "sha256-s8DzL7pp3hmD9k8pVqmk7WGq3zZ1tLF9C+jxcRtJOXA=";
+    hash = "sha256-vFg789vBV7ks+4YiWWl3u0/kQjzpAiX8dMfXU0hynDM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/tp/tpnote/package.nix b/pkgs/by-name/tp/tpnote/package.nix
index 267b9766abdb8..1f3410a9e14a6 100644
--- a/pkgs/by-name/tp/tpnote/package.nix
+++ b/pkgs/by-name/tp/tpnote/package.nix
@@ -39,6 +39,10 @@ rustPlatform.buildRustPackage rec {
      SystemConfiguration
   ]);
 
+  postInstall = ''
+    installManPage docs/build/man/man1/tpnote.1
+  '';
+
   RUSTONIG_SYSTEM_LIBONIG = true;
 
   passthru.tests.version = testers.testVersion { package = tpnote; };
diff --git a/pkgs/development/interpreters/python/cpython/default.nix b/pkgs/development/interpreters/python/cpython/default.nix
index 2df060a526132..fa65390cb200e 100644
--- a/pkgs/development/interpreters/python/cpython/default.nix
+++ b/pkgs/development/interpreters/python/cpython/default.nix
@@ -307,10 +307,15 @@ in with passthru; stdenv.mkDerivation (finalAttrs: {
     # (since it will do a futile invocation of gcc (!) to find
     # libuuid, slowing down program startup a lot).
     noldconfigPatch
+  ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform && stdenv.isFreeBSD) [
+    # Cross compilation only supports a limited number of "known good"
+    # configurations. If you're reading this and it's been a long time
+    # since this diff, consider submitting this patch upstream!
+    ./freebsd-cross.patch
+  ] ++ optionals (pythonOlder "3.13") [
     # Make sure that the virtualenv activation scripts are
     # owner-writable, so venvs can be recreated without permission
     # errors.
-  ] ++ optionals (pythonOlder "3.13") [
     ./virtualenv-permissions.patch
   ] ++ optionals (pythonAtLeast "3.13") [
     ./3.13/virtualenv-permissions.patch
diff --git a/pkgs/development/interpreters/python/cpython/freebsd-cross.patch b/pkgs/development/interpreters/python/cpython/freebsd-cross.patch
new file mode 100644
index 0000000000000..71b45bfead272
--- /dev/null
+++ b/pkgs/development/interpreters/python/cpython/freebsd-cross.patch
@@ -0,0 +1,22 @@
+--- a/configure.ac	2024-06-07 09:17:50.608162031 -0700
++++ b/configure.ac	2024-06-07 09:45:59.844518241 -0700
+@@ -554,6 +554,9 @@
+ 	*-*-wasi)
+ 	    ac_sys_system=WASI
+ 	    ;;
++	*-*-freebsd)
++	    ac_sys_system=FreeBSD
++	    ;;
+ 	*)
+ 		# for now, limit cross builds to known configurations
+ 		MACHDEP="unknown"
+@@ -614,6 +617,9 @@
+ 	wasm32-*-* | wasm64-*-*)
+ 		_host_cpu=$host_cpu
+ 		;;
++	x86_64-*-freebsd)
++		_host_cpu=x86_64
++		;;
+ 	*)
+ 		# for now, limit cross builds to known configurations
+ 		MACHDEP="unknown"
diff --git a/pkgs/development/interpreters/ruby/default.nix b/pkgs/development/interpreters/ruby/default.nix
index 5c8bb288bd7d3..8758c11528ea1 100644
--- a/pkgs/development/interpreters/ruby/default.nix
+++ b/pkgs/development/interpreters/ruby/default.nix
@@ -160,6 +160,9 @@ let
           "--with-out-ext=tk"
           # on yosemite, "generating encdb.h" will hang for a very long time without this flag
           "--with-setjmp-type=setjmp"
+        ] ++ ops stdenv.hostPlatform.isFreeBSD [
+          "rb_cv_gnu_qsort_r=no"
+          "rb_cv_bsd_qsort_r=yes"
         ];
 
         preConfigure = opString docSupport ''
diff --git a/pkgs/development/libraries/tkrzw/default.nix b/pkgs/development/libraries/tkrzw/default.nix
index 1d57c8164c03e..880bf3918811e 100644
--- a/pkgs/development/libraries/tkrzw/default.nix
+++ b/pkgs/development/libraries/tkrzw/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "tkrzw";
-  version = "1.0.29";
+  version = "1.0.31";
   # TODO: defeat multi-output reference cycles
 
   src = fetchurl {
     url = "https://dbmx.net/tkrzw/pkg/tkrzw-${version}.tar.gz";
-    hash = "sha256-q6q9b8iaGe2KICrDcRvDsHY9kovDqO7upzo2effn95A=";
+    hash = "sha256-7FdHglIBTHGKRt66WNTGEe5qUcrIyTYPrnuVrUc8l08=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/cashews/default.nix b/pkgs/development/python-modules/cashews/default.nix
new file mode 100644
index 0000000000000..3d75bc80c4758
--- /dev/null
+++ b/pkgs/development/python-modules/cashews/default.nix
@@ -0,0 +1,70 @@
+{
+  bitarray,
+  buildPythonPackage,
+  dill,
+  diskcache,
+  fetchFromGitHub,
+  hiredis,
+  hypothesis,
+  lib,
+  pytest,
+  pytest-asyncio,
+  pytest-cov,
+  pytest-rerunfailures,
+  pytestCheckHook,
+  redis,
+  setuptools,
+  xxhash,
+}:
+
+buildPythonPackage rec {
+  pname = "cashews";
+  version = "7.1.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "Krukov";
+    repo = "cashews";
+    rev = "refs/tags/${version}";
+    hash = "sha256-VzIW6/xhKk+ZWd29BYQp6sjpBst8IVz8t/hCLc2LFT4=";
+  };
+
+  build-system = [ setuptools ];
+
+  passthru.optional-dependencies = {
+    dill = [ dill ];
+    diskcache = [ diskcache ];
+    redis = [ redis ];
+    speedup = [
+      bitarray
+      hiredis
+      xxhash
+    ];
+  };
+
+  nativeCheckInputs = [
+    hypothesis
+    pytest
+    pytest-asyncio
+    pytest-cov
+    pytest-rerunfailures
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    # these tests require too many dependencies
+    "redis"
+    "diskcache"
+    "integration"
+  ];
+
+  pythonImportsCheck = [ "cashews" ];
+
+  meta = {
+    description = "Cache tools with async power";
+    homepage = "https://github.com/Krukov/cashews/";
+    changelog = "https://github.com/Krukov/cashews/releases/tag/${version}";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ moraxyc ];
+  };
+}
diff --git a/pkgs/development/python-modules/inequality/default.nix b/pkgs/development/python-modules/inequality/default.nix
new file mode 100644
index 0000000000000..3e01771193099
--- /dev/null
+++ b/pkgs/development/python-modules/inequality/default.nix
@@ -0,0 +1,45 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+
+  libpysal,
+  numpy,
+  scipy,
+  setuptools-scm,
+}:
+
+buildPythonPackage rec {
+  pname = "inequality";
+  version = "1.0.1";
+  pyproject = true;
+  disabled = pythonOlder "3.10";
+
+  src = fetchFromGitHub {
+    owner = "pysal";
+    repo = "inequality";
+    rev = "v${version}";
+    hash = "sha256-dy1/KXnmIh5LnTxuyYfIvtt1p2CIpNQ970o5pTg6diQ=";
+  };
+
+  build-system = [ setuptools-scm ];
+
+  propagatedBuildInputs = [
+    libpysal
+    numpy
+    scipy
+  ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "inequality" ];
+
+  meta = {
+    description = "Spatial inequality analysis";
+    homepage = "https://github.com/pysal/inequality";
+    license = lib.licenses.bsd3;
+    maintainers = lib.teams.geospatial.members;
+  };
+}
diff --git a/pkgs/development/python-modules/matplotlib-venn/default.nix b/pkgs/development/python-modules/matplotlib-venn/default.nix
new file mode 100644
index 0000000000000..acc988b4e6614
--- /dev/null
+++ b/pkgs/development/python-modules/matplotlib-venn/default.nix
@@ -0,0 +1,40 @@
+{
+  lib,
+  fetchPypi,
+  buildPythonPackage,
+  setuptools,
+  matplotlib,
+  numpy,
+  scipy,
+  pytestCheckHook,
+}:
+
+buildPythonPackage rec {
+  version = "0.11.10";
+  pname = "matplotlib-venn";
+
+  pyproject = true;
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-kNDPsnnF273339ciwOJRWjf1NelJvK0XRIO8d343LmU=";
+  };
+
+  build-system = [ setuptools ];
+
+  dependencies = [
+    matplotlib
+    numpy
+    scipy
+  ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  meta = {
+    description = "Functions for plotting area-proportional two- and three-way Venn diagrams in matplotlib";
+    homepage = "https://github.com/konstantint/matplotlib-venn";
+    changelog = "https://github.com/konstantint/matplotlib-venn/releases/tag/${version}";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ moraxyc ];
+  };
+}
diff --git a/pkgs/development/python-modules/momepy/default.nix b/pkgs/development/python-modules/momepy/default.nix
new file mode 100644
index 0000000000000..ebb110d12caa1
--- /dev/null
+++ b/pkgs/development/python-modules/momepy/default.nix
@@ -0,0 +1,57 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+
+  geopandas,
+  inequality,
+  libpysal,
+  mapclassify,
+  networkx,
+  packaging,
+  pandas,
+  setuptools-scm,
+  shapely,
+  tqdm,
+}:
+
+buildPythonPackage rec {
+  pname = "momepy";
+  version = "0.7.0";
+  pyproject = true;
+  disabled = pythonOlder "3.10";
+
+  src = fetchFromGitHub {
+    owner = "pysal";
+    repo = "momepy";
+    rev = "v${version}";
+    hash = "sha256-HVp2a0z+5fbfkNSxnTfZPCgG2SJMlKX/zso14M18mCk=";
+  };
+
+  build-system = [ setuptools-scm ];
+
+  propagatedBuildInputs = [
+    geopandas
+    inequality
+    libpysal
+    mapclassify
+    networkx
+    packaging
+    pandas
+    shapely
+    tqdm
+  ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "momepy" ];
+
+  meta = {
+    description = "Urban Morphology Measuring Toolkit";
+    homepage = "https://github.com/pysal/momepy";
+    license = lib.licenses.bsd3;
+    maintainers = lib.teams.geospatial.members;
+  };
+}
diff --git a/pkgs/development/python-modules/noneprompt/default.nix b/pkgs/development/python-modules/noneprompt/default.nix
new file mode 100644
index 0000000000000..77cd491486959
--- /dev/null
+++ b/pkgs/development/python-modules/noneprompt/default.nix
@@ -0,0 +1,39 @@
+{
+  buildPythonPackage,
+  fetchPypi,
+  lib,
+  poetry-core,
+  prompt-toolkit,
+  pythonOlder,
+}:
+
+buildPythonPackage rec {
+  pname = "noneprompt";
+  version = "0.1.9";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-M4uLuJqNIu818d7bOqfBsijPE5lzvcQ8X/w+72RFfbk=";
+  };
+
+  build-system = [ poetry-core ];
+
+  dependencies = [ prompt-toolkit ];
+
+  # no test
+  doCheck = false;
+
+  pythonImportsCheck = [ "noneprompt" ];
+
+  meta = {
+    description = "Prompt toolkit for console interaction";
+    homepage = "https://github.com/nonebot/noneprompt";
+    changelog = "https://github.com/nonebot/noneprompt/releases/tag/v${version}";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ moraxyc ];
+    mainProgram = "noneprompt";
+  };
+}
diff --git a/pkgs/development/python-modules/pydy/default.nix b/pkgs/development/python-modules/pydy/default.nix
index 613bf25632144..d6e0d6bf9775b 100644
--- a/pkgs/development/python-modules/pydy/default.nix
+++ b/pkgs/development/python-modules/pydy/default.nix
@@ -6,6 +6,8 @@
   scipy,
   sympy,
   setuptools,
+  pynose,
+  cython,
 }:
 
 buildPythonPackage rec {
@@ -26,8 +28,18 @@ buildPythonPackage rec {
     sympy
   ];
 
-  # nose test does not support 3.10 or later
-  doCheck = false;
+  nativeCheckInputs = [
+    pynose
+    cython
+  ];
+
+  checkPhase = ''
+    runHook preCheck
+
+    nosetests pydy
+
+    runHook postCheck
+  '';
 
   pythonImportsCheck = [ "pydy" ];
 
diff --git a/pkgs/development/python-modules/pypdf2/default.nix b/pkgs/development/python-modules/pypdf2/default.nix
index caf9223b03394..a94c6bca349b4 100644
--- a/pkgs/development/python-modules/pypdf2/default.nix
+++ b/pkgs/development/python-modules/pypdf2/default.nix
@@ -1,18 +1,17 @@
 {
-  lib,
   buildPythonPackage,
   fetchPypi,
   flit-core,
+  lib,
   pythonOlder,
   typing-extensions,
-  unittestCheckHook,
 }:
 
 buildPythonPackage rec {
   pname = "pypdf2";
   version = "3.0.1";
 
-  format = "pyproject";
+  pyproject = true;
 
   src = fetchPypi {
     pname = "PyPDF2";
@@ -22,9 +21,10 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [ flit-core ];
 
-  propagatedBuildInputs = lib.optionals (pythonOlder "3.10") [ typing-extensions ];
+  dependencies = lib.optionals (pythonOlder "3.10") [ typing-extensions ];
 
-  nativeCheckInputs = [ unittestCheckHook ];
+  # no test
+  doCheck = false;
 
   pythonImportsCheck = [ "PyPDF2" ];
 
diff --git a/pkgs/development/python-modules/stone/default.nix b/pkgs/development/python-modules/stone/default.nix
index 5f374859e0170..174cca93a355b 100644
--- a/pkgs/development/python-modules/stone/default.nix
+++ b/pkgs/development/python-modules/stone/default.nix
@@ -1,11 +1,12 @@
 {
-  lib,
   buildPythonPackage,
   fetchFromGitHub,
+  fetchpatch,
+  lib,
   mock,
+  packaging,
   ply,
   pytestCheckHook,
-  pythonAtLeast,
   pythonOlder,
   setuptools,
   six,
@@ -16,8 +17,23 @@ buildPythonPackage rec {
   version = "3.3.6";
   pyproject = true;
 
-  # distutils removal, https://github.com/dropbox/stone/issues/323
-  disabled = pythonOlder "3.7" || pythonAtLeast "3.12";
+  disabled = pythonOlder "3.7";
+
+  patches = [
+    # fix distutils issue
+    # fix versions in tests to conform pep 440
+    # See https://github.com/dropbox/stone/pull/334
+    (fetchpatch {
+      name = "no-distutils.patch";
+      url = "https://github.com/dropbox/stone/commit/f772d8d3b7e2ce62b14b4fb208a478bc8e54c7f2.patch";
+      hash = "sha256-SH4gG5S13n/pXppm62LvH9poGfeQGGonW7bkzdYh73Q=";
+    })
+    (fetchpatch {
+      name = "fix-test-pep-440.patch";
+      url = "https://github.com/dropbox/stone/commit/f36de56b1f87eae61829258b2f16aa8319bbcc5c.patch";
+      hash = "sha256-sBJukNk02RmQQza1qhLAkyx1OJRck0/zQOeRaXD9tkY=";
+    })
+  ];
 
   src = fetchFromGitHub {
     owner = "dropbox";
@@ -36,6 +52,7 @@ buildPythonPackage rec {
   dependencies = [
     ply
     six
+    packaging
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/torch/default.nix b/pkgs/development/python-modules/torch/default.nix
index f6f66aa9d0b44..7fd7cc5a66148 100644
--- a/pkgs/development/python-modules/torch/default.nix
+++ b/pkgs/development/python-modules/torch/default.nix
@@ -201,6 +201,7 @@ let
       MPISupport && cudaSupport && (mpi.cudatoolkit != cudaPackages.cudatoolkit);
     "Magma cudaPackages does not match cudaPackages" =
       cudaSupport && (effectiveMagma.cudaPackages != cudaPackages);
+    "Rocm support is currently broken because `rocmPackages.hipblaslt` is unpackaged. (2024-06-09)" = rocmSupport;
   };
 in
 buildPythonPackage rec {
diff --git a/pkgs/development/tools/misc/gdb/default.nix b/pkgs/development/tools/misc/gdb/default.nix
index 30f824c4e4768..fd15916fdfe1b 100644
--- a/pkgs/development/tools/misc/gdb/default.nix
+++ b/pkgs/development/tools/misc/gdb/default.nix
@@ -140,6 +140,8 @@ stdenv.mkDerivation rec {
   };
 
   meta = with lib; {
+    mainProgram = "gdb";
+
     description = "The GNU Project debugger";
 
     longDescription = ''
diff --git a/pkgs/tools/audio/abcmidi/default.nix b/pkgs/tools/audio/abcmidi/default.nix
index a26e3de521e20..f24acd60185b1 100644
--- a/pkgs/tools/audio/abcmidi/default.nix
+++ b/pkgs/tools/audio/abcmidi/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "abcMIDI";
-  version = "2024.04.30";
+  version = "2024.06.03";
 
   src = fetchzip {
     url = "https://ifdo.ca/~seymour/runabc/${pname}-${version}.zip";
-    hash = "sha256-Yw/EQZlGTYxouRL1Tf4TDSNWMleB7vKzWg4n6sw5d4Q=";
+    hash = "sha256-iq/NnXMATYRCjeBlcSvgdCVe2lDz/Tade7GQnlCygGM=";
   };
 
   meta = with lib; {
diff --git a/pkgs/tools/networking/dhcpcd/default.nix b/pkgs/tools/networking/dhcpcd/default.nix
index 158097d7c166b..ea79ea7d49dcf 100644
--- a/pkgs/tools/networking/dhcpcd/default.nix
+++ b/pkgs/tools/networking/dhcpcd/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , pkg-config
 , udev
+, freebsd
 , runtimeShellPackage
 , runtimeShell
 , nixosTests
@@ -22,8 +23,12 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [
-    udev
     runtimeShellPackage # So patchShebangs finds a bash suitable for the installed scripts
+  ] ++ lib.optionals stdenv.isLinux [
+    udev
+  ] ++ lib.optionals stdenv.isFreeBSD [
+    freebsd.libcapsicum
+    freebsd.libcasper
   ];
 
   postPatch = ''
@@ -52,7 +57,7 @@ stdenv.mkDerivation rec {
   installFlags = [ "DBDIR=$(TMPDIR)/db" "SYSCONFDIR=${placeholder "out"}/etc" ];
 
   # Check that the udev plugin got built.
-  postInstall = lib.optionalString (udev != null) "[ -e ${placeholder "out"}/lib/dhcpcd/dev/udev.so ]";
+  postInstall = lib.optionalString (udev != null && stdenv.isLinux) "[ -e ${placeholder "out"}/lib/dhcpcd/dev/udev.so ]";
 
   passthru = {
     inherit enablePrivSep;
@@ -62,7 +67,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A client for the Dynamic Host Configuration Protocol (DHCP)";
     homepage = "https://roy.marples.name/projects/dhcpcd";
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.freebsd;
     license = licenses.bsd2;
     maintainers = with maintainers; [ eelco ];
     mainProgram = "dhcpcd";
diff --git a/pkgs/tools/security/zmap/default.nix b/pkgs/tools/security/zmap/default.nix
index de1bc354cf62b..16e58028f3e10 100644
--- a/pkgs/tools/security/zmap/default.nix
+++ b/pkgs/tools/security/zmap/default.nix
@@ -1,22 +1,22 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config, libjson, json_c, gengetopt, flex, byacc, gmp
-, libpcap, libunistring
+, libpcap, libunistring, judy
 }:
 
 stdenv.mkDerivation rec {
   pname = "zmap";
-  version = "3.0.0";
+  version = "4.1.1";
 
   src = fetchFromGitHub {
     owner = "zmap";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-OJZKcnsuBi3z/AI05RMBitgn01bhVTqx2jFYJLuIJk4=";
+    sha256 = "sha256-ftdjIBAAe+3qUEHoNMAOCmzy+PWD4neIMWvFXFi2JFo=";
   };
 
   cmakeFlags = [ "-DRESPECT_INSTALL_PREFIX_CONFIG=ON" ];
 
   nativeBuildInputs = [ cmake pkg-config gengetopt flex byacc ];
-  buildInputs = [ libjson json_c gmp libpcap libunistring ];
+  buildInputs = [ libjson json_c gmp libpcap libunistring judy ];
 
   outputs = [ "out" "man" ];
 
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index f4f21ee297807..e4830c6bb5eda 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -1945,6 +1945,8 @@ self: super: with self; {
 
   cashaddress = callPackage ../development/python-modules/cashaddress { };
 
+  cashews = callPackage ../development/python-modules/cashews {  };
+
   cassandra-driver = callPackage ../development/python-modules/cassandra-driver { };
 
   castepxbin = callPackage ../development/python-modules/castepxbin { };
@@ -5785,6 +5787,8 @@ self: super: with self; {
 
   indexed-zstd = callPackage ../development/python-modules/indexed-zstd { inherit (pkgs) zstd; };
 
+  inequality = callPackage ../development/python-modules/inequality { };
+
   infinity = callPackage ../development/python-modules/infinity { };
 
   inflect = callPackage ../development/python-modules/inflect { };
@@ -7275,6 +7279,8 @@ self: super: with self; {
 
   matplotlib-sixel = callPackage ../development/python-modules/matplotlib-sixel { };
 
+  matplotlib-venn = callPackage ../development/python-modules/matplotlib-venn { };
+
   matplotx = callPackage ../development/python-modules/matplotx { };
 
   matrix-api-async = callPackage ../development/python-modules/matrix-api-async { };
@@ -7673,6 +7679,8 @@ self: super: with self; {
 
   molecule-plugins = callPackage ../development/python-modules/molecule/plugins.nix { };
 
+  momepy = callPackage ../development/python-modules/momepy { };
+
   monai = callPackage ../development/python-modules/monai { };
 
   monai-deploy = callPackage ../development/python-modules/monai-deploy { };
@@ -8648,6 +8656,8 @@ self: super: with self; {
 
   nomadnet = callPackage ../development/python-modules/nomadnet { };
 
+  noneprompt = callPackage ../development/python-modules/noneprompt {  };
+
   nox = callPackage ../development/python-modules/nox { };
 
   nanomsg-python = callPackage ../development/python-modules/nanomsg-python {