summary refs log tree commit diff
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2023-07-24 18:03:03 +0000
committerGitHub <noreply@github.com>2023-07-24 18:03:03 +0000
commit48c72f00ba1bbf1da5bf6e16528b939e7fb28a82 (patch)
tree9c420cf0af8ca0ad81c6d27bb4ff98246cb51cf8
parent6fb9472e84d507069df7f11dad0d4390533dc511 (diff)
parentab0c0e128afe27c62c77d2f752a807daf7fcd2e5 (diff)
downloadnixpkgs-48c72f00ba1bbf1da5bf6e16528b939e7fb28a82.tar
nixpkgs-48c72f00ba1bbf1da5bf6e16528b939e7fb28a82.tar.gz
nixpkgs-48c72f00ba1bbf1da5bf6e16528b939e7fb28a82.tar.bz2
nixpkgs-48c72f00ba1bbf1da5bf6e16528b939e7fb28a82.tar.lz
nixpkgs-48c72f00ba1bbf1da5bf6e16528b939e7fb28a82.tar.xz
nixpkgs-48c72f00ba1bbf1da5bf6e16528b939e7fb28a82.tar.zst
nixpkgs-48c72f00ba1bbf1da5bf6e16528b939e7fb28a82.zip
Merge staging-next into staging
-rw-r--r--.github/CODEOWNERS3
-rw-r--r--maintainers/maintainer-list.nix24
-rw-r--r--nixos/lib/test-driver/test_driver/machine.py2
-rw-r--r--nixos/tests/all-tests.nix1
-rw-r--r--nixos/tests/nixos-test-driver/busybox.nix16
-rw-r--r--pkgs/applications/audio/cmusfm/default.nix4
-rw-r--r--pkgs/applications/backup/vorta/default.nix7
-rw-r--r--pkgs/applications/emulators/retroarch/default.nix12
-rw-r--r--pkgs/applications/emulators/retroarch/use-default-values-for-libretro_info_path-assets_directory.patch34
-rw-r--r--pkgs/applications/graphics/glabels-qt/default.nix31
-rw-r--r--pkgs/applications/misc/kbt/default.nix25
-rw-r--r--pkgs/applications/misc/urlscan/default.nix30
-rw-r--r--pkgs/applications/networking/cluster/temporal-cli/default.nix22
-rw-r--r--pkgs/applications/networking/cluster/timoni/default.nix46
-rw-r--r--pkgs/applications/office/jabref/default.nix12
-rw-r--r--pkgs/applications/science/electronics/sv-lang/default.nix75
-rw-r--r--pkgs/applications/virtualization/docker/default.nix10
-rw-r--r--pkgs/development/interpreters/wazero/default.nix4
-rw-r--r--pkgs/development/libraries/libqb/default.nix4
-rw-r--r--pkgs/development/libraries/phonon/backends/gstreamer.nix37
-rw-r--r--pkgs/development/libraries/thrift/default.nix7
-rw-r--r--pkgs/development/python-modules/asyncua/default.nix12
-rw-r--r--pkgs/development/python-modules/azure-mgmt-netapp/default.nix4
-rw-r--r--pkgs/development/python-modules/discogs-client/default.nix4
-rw-r--r--pkgs/development/python-modules/nbconflux/default.nix9
-rw-r--r--pkgs/development/python-modules/nbconflux/setup-py.patch16
-rw-r--r--pkgs/development/python-modules/pyxnat/default.nix46
-rw-r--r--pkgs/development/python-modules/vcard/default.nix34
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix4
-rw-r--r--pkgs/development/tools/gen-license/default.nix27
-rw-r--r--pkgs/development/tools/lazygit/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-diet/default.nix8
-rw-r--r--pkgs/development/tools/yarn-berry/default.nix43
-rw-r--r--pkgs/games/jazz2/game.nix4
-rw-r--r--pkgs/misc/opcua-client-gui/default.nix20
-rw-r--r--pkgs/servers/homepage-dashboard/default.nix25
-rw-r--r--pkgs/servers/jackett/default.nix4
-rw-r--r--pkgs/tools/admin/pbm/default.nix4
-rw-r--r--pkgs/tools/misc/dotter/default.nix4
-rw-r--r--pkgs/tools/misc/twspace-dl/default.nix10
-rw-r--r--pkgs/tools/networking/sing-box/default.nix6
-rw-r--r--pkgs/tools/package-management/apkg/default.nix25
-rw-r--r--pkgs/tools/security/osv-detector/default.nix22
-rw-r--r--pkgs/tools/text/repgrep/default.nix6
-rw-r--r--pkgs/tools/video/go2rtc/default.nix4
-rw-r--r--pkgs/top-level/all-packages.nix30
-rw-r--r--pkgs/top-level/python-packages.nix2
47 files changed, 602 insertions, 183 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 73523dee316..c15fccd28f8 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -313,3 +313,6 @@ nixos/lib/make-single-disk-zfs-image.nix  @raitobezarius
 nixos/lib/make-multi-disk-zfs-image.nix   @raitobezarius
 nixos/modules/tasks/filesystems/zfs.nix   @raitobezarius
 nixos/tests/zfs.nix                       @raitobezarius
+
+# Linux Kernel
+pkgs/os-specific/linux/kernel/manual-config.nix   @amjoseph-nixpkgs
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 28c34b4d11f..3e8e8211c8d 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -9168,6 +9168,12 @@
       fingerprint = "5A9A 1C9B 2369 8049 3B48  CF5B 81A1 5409 4816 2372";
     }];
   };
+  l0b0 = {
+    email = "victor@engmark.name";
+    github = "l0b0";
+    githubId = 168301;
+    name = "Victor Engmark";
+  };
   l3af = {
     email = "L3afMeAlon3@gmail.com";
     matrix = "@L3afMe:matrix.org";
@@ -14531,6 +14537,12 @@
     githubId = 889991;
     name = "Ryan Artecona";
   };
+  ryanccn = {
+    email = "hello@ryanccn.dev";
+    github = "ryanccn";
+    githubId = 70191398;
+    name = "Ryan Cao";
+  };
   ryane = {
     email = "ryanesc@gmail.com";
     github = "ryane";
@@ -14585,6 +14597,12 @@
     githubId = 3280280;
     name = "Ryne Everett";
   };
+  ryota-ka = {
+    email = "ok@ryota-ka.me";
+    github = "ryota-ka";
+    githubId = 7309170;
+    name = "Ryota Kameoka";
+  };
   rytone = {
     email = "max@ryt.one";
     github = "rastertail";
@@ -17604,6 +17622,12 @@
     githubId = 3413119;
     name = "Vonfry";
   };
+  votava = {
+    email = "votava@gmail.com";
+    github = "janvotava";
+    githubId = 367185;
+    name = "Jan Votava";
+  };
   vq = {
     email = "vq@erq.se";
     github = "vq";
diff --git a/nixos/lib/test-driver/test_driver/machine.py b/nixos/lib/test-driver/test_driver/machine.py
index dbfe256011e..789dee101f0 100644
--- a/nixos/lib/test-driver/test_driver/machine.py
+++ b/nixos/lib/test-driver/test_driver/machine.py
@@ -583,7 +583,7 @@ class Machine:
         # While sh is bash on NixOS, this is not the case for every distro.
         # We explicitly call bash here to allow for the driver to boot other distros as well.
         out_command = (
-            f"{timeout_str} bash -c {shlex.quote(command)} | (base64 --wrap 0; echo)\n"
+            f"{timeout_str} bash -c {shlex.quote(command)} | (base64 -w 0; echo)\n"
         )
 
         assert self.shell
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index 80fd8bf2a0f..9ab0bfb21f4 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -89,6 +89,7 @@ in {
     extra-python-packages = handleTest ./nixos-test-driver/extra-python-packages.nix {};
     lib-extend = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./nixos-test-driver/lib-extend.nix {};
     node-name = runTest ./nixos-test-driver/node-name.nix;
+    busybox = runTest ./nixos-test-driver/busybox.nix;
   };
 
   # NixOS vm tests and non-vm unit tests
diff --git a/nixos/tests/nixos-test-driver/busybox.nix b/nixos/tests/nixos-test-driver/busybox.nix
new file mode 100644
index 00000000000..426f4494436
--- /dev/null
+++ b/nixos/tests/nixos-test-driver/busybox.nix
@@ -0,0 +1,16 @@
+{
+  name = "Test that basic tests work when busybox is installed";
+
+  nodes = {
+    machine = ({ pkgs, ... }: {
+      environment.systemPackages = [
+        pkgs.busybox
+      ];
+    });
+  };
+
+  testScript = ''
+    start_all()
+    machine.wait_for_unit("multi-user.target")
+  '';
+}
diff --git a/pkgs/applications/audio/cmusfm/default.nix b/pkgs/applications/audio/cmusfm/default.nix
index 17495ead355..8f15b7d6114 100644
--- a/pkgs/applications/audio/cmusfm/default.nix
+++ b/pkgs/applications/audio/cmusfm/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cmusfm";
-  version = "0.4.1";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "Arkq";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1px2is80jdxchg8cpn5cizg6jvcbzyxl0qzs3bn0k3d10qjvdww5";
+    sha256 = "sha256-CA585ZpkxMMLgzv81QB2kKMFg5R5CwKS9xAYrU+pAxs=";
   };
 
   configureFlags = lib.optional libnotifySupport "--enable-libnotify"
diff --git a/pkgs/applications/backup/vorta/default.nix b/pkgs/applications/backup/vorta/default.nix
index 8c8d399d7d8..7870b3c11ee 100644
--- a/pkgs/applications/backup/vorta/default.nix
+++ b/pkgs/applications/backup/vorta/default.nix
@@ -4,6 +4,7 @@
 , wrapQtAppsHook
 , borgbackup
 , qt5
+, stdenv
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -19,6 +20,10 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [ wrapQtAppsHook ];
 
+  buildInputs = lib.optionals stdenv.isLinux [
+    qt5.qtwayland
+  ];
+
   propagatedBuildInputs = with python3Packages; [
     peewee
     pyqt5
@@ -29,8 +34,6 @@ python3Packages.buildPythonApplication rec {
     appdirs
     setuptools
     platformdirs
-  ] ++ lib.optionals stdenv.isLinux [
-    qt5.qtwayland
   ];
 
   postPatch = ''
diff --git a/pkgs/applications/emulators/retroarch/default.nix b/pkgs/applications/emulators/retroarch/default.nix
index ba1bfe28b2a..2abbdb1c46e 100644
--- a/pkgs/applications/emulators/retroarch/default.nix
+++ b/pkgs/applications/emulators/retroarch/default.nix
@@ -2,8 +2,6 @@
 , stdenv
 , nixosTests
 , enableNvidiaCgToolkit ? false
-, withAssets ? false
-, withCoreInfo ? false
 , withGamemode ? stdenv.isLinux
 , withVulkan ? stdenv.isLinux
 , withWayland ? stdenv.isLinux
@@ -61,10 +59,6 @@ stdenv.mkDerivation rec {
     rev = "v${version}";
   };
 
-  patches = [
-    ./use-default-values-for-libretro_info_path-assets_directory.patch
-  ];
-
   nativeBuildInputs = [ pkg-config wrapQtAppsHook ] ++
     lib.optional withWayland wayland ++
     lib.optional (runtimeLibs != [ ]) makeWrapper;
@@ -109,14 +103,8 @@ stdenv.mkDerivation rec {
     "--enable-systemmbedtls"
     "--disable-builtinzlib"
     "--disable-builtinflac"
-  ] ++
-  lib.optionals withAssets [
     "--disable-update_assets"
-    "--with-assets_dir=${retroarch-assets}/share"
-  ] ++
-  lib.optionals withCoreInfo [
     "--disable-update_core_info"
-    "--with-core_info_dir=${libretro-core-info}/share"
   ] ++
   lib.optionals stdenv.isLinux [
     "--enable-dbus"
diff --git a/pkgs/applications/emulators/retroarch/use-default-values-for-libretro_info_path-assets_directory.patch b/pkgs/applications/emulators/retroarch/use-default-values-for-libretro_info_path-assets_directory.patch
deleted file mode 100644
index 7ef7f439ecd..00000000000
--- a/pkgs/applications/emulators/retroarch/use-default-values-for-libretro_info_path-assets_directory.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 6960855a0cdfd671d214030260b340a73878af52 Mon Sep 17 00:00:00 2001
-From: Thiago Kenji Okada <thiagokokada@gmail.com>
-Date: Fri, 23 Dec 2022 21:42:15 +0000
-Subject: [PATCH] Use default values for libretro_info_path/assets_directories
-
----
- configuration.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configuration.c b/configuration.c
-index d9ab8370c4..15b575d8a2 100644
---- a/configuration.c
-+++ b/configuration.c
-@@ -1483,7 +1483,7 @@ static struct config_path_setting *populate_settings_path(
-    SETTING_PATH("core_options_path",
-          settings->paths.path_core_options, false, NULL, true);
-    SETTING_PATH("libretro_info_path",
--         settings->paths.path_libretro_info, false, NULL, true);
-+         settings->paths.path_libretro_info, false, NULL, false);
-    SETTING_PATH("content_database_path",
-          settings->paths.path_content_database, false, NULL, true);
-    SETTING_PATH("cheat_database_path",
-@@ -1539,7 +1539,7 @@ static struct config_path_setting *populate_settings_path(
-    SETTING_PATH("core_assets_directory",
-          settings->paths.directory_core_assets, true, NULL, true);
-    SETTING_PATH("assets_directory",
--         settings->paths.directory_assets, true, NULL, true);
-+         settings->paths.directory_assets, true, NULL, false);
-    SETTING_PATH("dynamic_wallpapers_directory",
-          settings->paths.directory_dynamic_wallpapers, true, NULL, true);
-    SETTING_PATH("thumbnails_directory",
--- 
-2.38.1
-
diff --git a/pkgs/applications/graphics/glabels-qt/default.nix b/pkgs/applications/graphics/glabels-qt/default.nix
new file mode 100644
index 00000000000..5715241fb75
--- /dev/null
+++ b/pkgs/applications/graphics/glabels-qt/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, fetchFromGitHub
+, cmake
+, mkDerivation
+, qttools
+}:
+
+mkDerivation {
+  pname = "glabels-qt";
+  version = "unstable-2021-02-06";
+
+  src = fetchFromGitHub {
+    owner = "jimevins";
+    repo = "glabels-qt";
+    rev = "glabels-3.99-master564";
+    hash = "sha256-SdNOkjspqf6NuuIBZDsJneY6PNrIiP4HU46wDpBLt9Y=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    qttools
+  ];
+
+  meta = with lib; {
+    description = "GLabels Label Designer (Qt/C++)";
+    homepage = "https://github.com/jimevins/glabels-qt";
+    license = licenses.gpl3Only;
+    maintainers = [ maintainers.matthewcroughan ];
+    platforms = lib.platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/kbt/default.nix b/pkgs/applications/misc/kbt/default.nix
new file mode 100644
index 00000000000..4b1f1abda9e
--- /dev/null
+++ b/pkgs/applications/misc/kbt/default.nix
@@ -0,0 +1,25 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "kbt";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "bloznelis";
+    repo = "kbt";
+    rev = version;
+    hash = "sha256-gZUZB7cbaYlDs3PfRhkRlyJ6FBqtUAANL/K8Q/Dk8Zc=";
+  };
+
+  cargoHash = "sha256-BcUxrZKJEgYgGQqgi9l6xcmwyTRNr9C2WWOgaFB5XSw=";
+
+  meta = with lib; {
+    description = "Keyboard tester in terminal";
+    homepage = "https://github.com/bloznelis/kbt";
+    license = licenses.mit;
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/pkgs/applications/misc/urlscan/default.nix b/pkgs/applications/misc/urlscan/default.nix
index 726c749d604..6b95a9b9734 100644
--- a/pkgs/applications/misc/urlscan/default.nix
+++ b/pkgs/applications/misc/urlscan/default.nix
@@ -1,30 +1,42 @@
 { lib
-, python3Packages
 , fetchFromGitHub
+, python3
 }:
 
-python3Packages.buildPythonApplication rec {
+python3.pkgs.buildPythonApplication rec {
   pname = "urlscan";
-  version = "0.9.10";
+  version = "1.0.0";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "firecat53";
     repo = pname;
-    rev = version;
-    hash = "sha256-lCOOVAdsr5LajBGY7XUi4J5pJqm5rOH5IMKhA6fju5w=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-IvCdc4f784hBM+TEa0zIACz/1/FUnEpGxHUGiS85tt8=";
   };
 
-  propagatedBuildInputs = [
-    python3Packages.urwid
+  SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = with python3.pkgs; [
+    hatchling
+    hatch-vcs
+  ];
+
+  propagatedBuildInputs = with python3.pkgs; [
+    urwid
   ];
 
-  doCheck = false; # No tests available
+  # No tests available
+  doCheck = false;
 
-  pythonImportsCheck = [ "urlscan" ];
+  pythonImportsCheck = [
+    "urlscan"
+  ];
 
   meta = with lib; {
     description = "Mutt and terminal url selector (similar to urlview)";
     homepage = "https://github.com/firecat53/urlscan";
+    changelog = "https://github.com/firecat53/urlscan/releases/tag/${version}";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ dpaetzel jfrankenau ];
   };
diff --git a/pkgs/applications/networking/cluster/temporal-cli/default.nix b/pkgs/applications/networking/cluster/temporal-cli/default.nix
index 6d30171e1e0..c35cf14e064 100644
--- a/pkgs/applications/networking/cluster/temporal-cli/default.nix
+++ b/pkgs/applications/networking/cluster/temporal-cli/default.nix
@@ -1,6 +1,13 @@
 { lib, fetchFromGitHub, buildGoModule, installShellFiles, symlinkJoin }:
 
 let
+  metaCommon = with lib; {
+    description = "Command-line interface for running Temporal Server and interacting with Workflows, Activities, Namespaces, and other parts of Temporal";
+    homepage = "https://docs.temporal.io/cli";
+    license = licenses.mit;
+    maintainers = with maintainers; [ aaronjheng ];
+  };
+
   overrideModAttrs = old: {
     # https://gitlab.com/cznic/libc/-/merge_requests/10
     postBuild = ''
@@ -44,6 +51,10 @@ let
     '';
 
     __darwinAllowLocalNetworking = true;
+
+    meta = metaCommon // {
+      mainProgram = "temporal";
+    };
   };
 
   tctl = buildGoModule rec {
@@ -78,6 +89,10 @@ let
     '';
 
     __darwinAllowLocalNetworking = true;
+
+    meta = metaCommon // {
+      mainProgram = "tctl";
+    };
   };
 in
 symlinkJoin rec {
@@ -92,11 +107,8 @@ symlinkJoin rec {
 
   passthru = { inherit tctl tctl-next; };
 
-  meta = with lib; {
-    description = "Temporal CLI";
-    homepage = "https://temporal.io";
-    license = licenses.mit;
-    maintainers = with maintainers; [ aaronjheng ];
+  meta = metaCommon // {
     mainProgram = "temporal";
+    platforms = lib.unique (lib.concatMap (drv: drv.meta.platforms) paths);
   };
 }
diff --git a/pkgs/applications/networking/cluster/timoni/default.nix b/pkgs/applications/networking/cluster/timoni/default.nix
new file mode 100644
index 00000000000..1ce1420ce3d
--- /dev/null
+++ b/pkgs/applications/networking/cluster/timoni/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, installShellFiles
+}:
+
+buildGoModule rec {
+  pname = "timoni";
+  version = "0.10.0";
+
+  src = fetchFromGitHub {
+    owner = "stefanprodan";
+    repo = "timoni";
+    rev = "v${version}";
+    hash = "sha256-D49jpwldmtS7/+++4avqAGOhILaHmlUvnfjoV45KVc4=";
+  };
+
+  vendorHash = "sha256-QWNYBHxcKyAexnD6bHfJIDSOEST2J/09YKC/kDsXKHU=";
+
+  subPackages = [ "cmd/timoni" ];
+  nativeBuildInputs = [ installShellFiles ];
+
+  # Some tests require running Kubernetes instance
+  doCheck = false;
+
+  ldflags = [
+    "-s"
+    "-w"
+    "-X main.VERSION=${version}"
+  ];
+
+  postInstall = ''
+    installShellCompletion --cmd timoni \
+    --bash <($out/bin/timoni completion bash) \
+    --fish <($out/bin/timoni completion fish) \
+    --zsh <($out/bin/timoni completion zsh)
+  '';
+
+  meta = with lib; {
+    homepage = "https://timoni.sh";
+    changelog = "https://github.com/stefanprodan/timoni/releases/tag/${src.rev}";
+    description = "A package manager for Kubernetes, powered by CUE and inspired by Helm";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ votava ];
+  };
+}
diff --git a/pkgs/applications/office/jabref/default.nix b/pkgs/applications/office/jabref/default.nix
index 786fa2f4623..d218d7351b2 100644
--- a/pkgs/applications/office/jabref/default.nix
+++ b/pkgs/applications/office/jabref/default.nix
@@ -38,12 +38,12 @@ stdenv.mkDerivation rec {
   desktopItems = [
     (makeDesktopItem {
       comment = meta.description;
-      name = "JabRef %U";
+      name = "JabRef";
       desktopName = "JabRef";
       genericName = "Bibliography manager";
       categories = [ "Office" ];
       icon = "jabref";
-      exec = "JabRef";
+      exec = "JabRef %U";
       startupWMClass = "org.jabref.gui.JabRefMain";
       mimeTypes = [ "text/x-bibtex" ];
     })
@@ -144,8 +144,14 @@ stdenv.mkDerivation rec {
     unzip $out/lib/javafx-web-*.jar libjfxwebkit.so -d $out/lib/
 
     DEFAULT_JVM_OPTS=$(sed -n -E "s/^DEFAULT_JVM_OPTS='(.*)'$/\1/p" $out/bin/JabRef | sed -e "s|\$APP_HOME|$out|g" -e 's/"//g')
+
+    runHook postInstall
+  '';
+
+  postFixup = ''
     rm $out/bin/*
 
+    # put this in postFixup because some gappsWrapperArgs are generated in gappsWrapperArgsHook in preFixup
     makeWrapper ${jdk}/bin/java $out/bin/JabRef \
       "''${gappsWrapperArgs[@]}" \
       --suffix PATH : ${lib.makeBinPath [ xdg-utils ]} \
@@ -154,8 +160,6 @@ stdenv.mkDerivation rec {
 
     # lowercase alias (for convenience and required for browser extensions)
     ln -sf $out/bin/JabRef $out/bin/jabref
-
-    runHook postInstall
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/science/electronics/sv-lang/default.nix b/pkgs/applications/science/electronics/sv-lang/default.nix
new file mode 100644
index 00000000000..58ecf986cf7
--- /dev/null
+++ b/pkgs/applications/science/electronics/sv-lang/default.nix
@@ -0,0 +1,75 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, boost182
+, catch2_3
+, cmake
+, ninja
+, fmt_9
+, python3
+}:
+
+let
+  # dependency for this library has been removed in master (i.e. next release)
+  unordered_dense = stdenv.mkDerivation rec {
+    version = "2.0.1";
+    pname = "unordered_dense";
+    src = fetchFromGitHub {
+      owner = "martinus";
+      repo = pname;
+      rev = "v${version}";
+      sha256 = "sha256-9zlWYAY4lOQsL9+MYukqavBi5k96FvglRgznLIwwRyw=";
+    };
+    nativeBuildInputs = [
+      cmake
+    ];
+  };
+
+in
+stdenv.mkDerivation rec {
+  pname = "sv-lang";
+  version = "3.0";
+
+  src = fetchFromGitHub {
+    owner = "MikePopoloski";
+    repo = "slang";
+    rev = "v${version}";
+    sha256 = "sha256-v2sStvukLFMRXGeATxvizmnwEPDE4kwnS06n+37OrJA=";
+  };
+
+  cmakeFlags = [
+    # fix for https://github.com/NixOS/nixpkgs/issues/144170
+    "-DCMAKE_INSTALL_INCLUDEDIR=include"
+    "-DCMAKE_INSTALL_LIBDIR=lib"
+
+    "-DSLANG_INCLUDE_TESTS=${if doCheck then "ON" else "OFF"}"
+  ];
+
+  nativeBuildInputs = [
+    cmake
+    python3
+    ninja
+
+    # though only used in tests, cmake will complain its absence when configuring
+    catch2_3
+  ];
+
+  buildInputs = [
+    unordered_dense
+    boost182
+    fmt_9
+  ];
+
+  # TODO: a mysterious linker error occurs when building the unittests on darwin.
+  # The error occurs when using catch2_3 in nixpkgs, not when fetching catch2_3 using CMake
+  doCheck = !stdenv.isDarwin;
+
+  meta = with lib; {
+    description = "SystemVerilog compiler and language services";
+    homepage = "https://github.com/MikePopoloski/slang";
+    license = licenses.mit;
+    maintainers = with maintainers; [ sharzy ];
+    mainProgram = "slang";
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index 79f39f949ec..cf5698c5bbd 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -188,6 +188,14 @@ rec {
       ++ lib.optional withSeccomp libseccomp
       ++ plugins;
 
+    patches = [
+      (fetchpatch {
+        name = "fix-issue-with-go-1.20.6.patch";
+        url = "https://github.com/docker/cli/pull/4441.patch";
+        hash = "sha256-F4ueSbdBk1w8OqC4Dgh8+4Ql4zTjehaM368ET7k6Yx8=";
+      })
+    ];
+
     postPatch = ''
       patchShebangs man scripts/build/
       substituteInPlace ./scripts/build/.variables --replace "set -eu" ""
@@ -265,7 +273,7 @@ rec {
         To enable the docker daemon on NixOS, set the `virtualisation.docker.enable` option to `true`.
       '';
       license = licenses.asl20;
-      maintainers = with maintainers; [ offline vdemeester periklis mikroskeem maxeaubrey ];
+      maintainers = with maintainers; [ offline vdemeester periklis maxeaubrey ];
     };
   });
 
diff --git a/pkgs/development/interpreters/wazero/default.nix b/pkgs/development/interpreters/wazero/default.nix
index 46a186d9498..f72f4be1fc5 100644
--- a/pkgs/development/interpreters/wazero/default.nix
+++ b/pkgs/development/interpreters/wazero/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "wazero";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "tetratelabs";
     repo = "wazero";
     rev = "v${version}";
-    hash = "sha256-jZCh7RMJKKEPsirxNFZAtm0T0EGpmWIoQrkXYR95Krg=";
+    hash = "sha256-gLiUEJdO/2btZb5D9O1r+uF3ZVBN4Oy3dFwqUNQRoW8=";
   };
 
   vendorHash = null;
diff --git a/pkgs/development/libraries/libqb/default.nix b/pkgs/development/libraries/libqb/default.nix
index 86624a1ecc2..8e798e4a38a 100644
--- a/pkgs/development/libraries/libqb/default.nix
+++ b/pkgs/development/libraries/libqb/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libqb";
-  version = "2.0.7";
+  version = "2.0.8";
 
   src = fetchFromGitHub {
     owner = "ClusterLabs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Tfw5nGy3A3zLtVuyHn+8jzXPySRNwBx0opwkE+0k+RA=";
+    sha256 = "sha256-ZjxC7W4U8T68mZy/OvWj/e4W9pJIj2lVDoEjxXYr/G8=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/development/libraries/phonon/backends/gstreamer.nix b/pkgs/development/libraries/phonon/backends/gstreamer.nix
index e0614c73741..fc0afbe2184 100644
--- a/pkgs/development/libraries/phonon/backends/gstreamer.nix
+++ b/pkgs/development/libraries/phonon/backends/gstreamer.nix
@@ -7,14 +7,6 @@ stdenv.mkDerivation rec {
   pname = "phonon-backend-gstreamer";
   version = "4.10.0";
 
-  meta = with lib; {
-    homepage = "https://phonon.kde.org/";
-    description = "GStreamer backend for Phonon";
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ ttuegel ];
-    license = licenses.lgpl21;
-  };
-
   src = fetchurl {
     url = "mirror://kde/stable/phonon/${pname}/${version}/${pname}-${version}.tar.xz";
     sha256 = "1wk1ip2w7fkh65zk6rilj314dna0hgsv2xhjmpr5w08xa8sii1y5";
@@ -34,17 +26,16 @@ stdenv.mkDerivation rec {
 
   dontWrapQtApps = true;
 
-  env.NIX_CFLAGS_COMPILE =
-    let gstPluginPaths =
-          lib.makeSearchPathOutput "lib" "/lib/gstreamer-1.0"
-          (with gst_all_1; [
-            gstreamer
-            gst-plugins-base
-            gst-plugins-good
-            gst-plugins-ugly
-            gst-plugins-bad
-            gst-libav
-          ]);
+  env.NIX_CFLAGS_COMPILE = let
+    gstPluginPaths = lib.makeSearchPathOutput "lib" "/lib/gstreamer-1.0"
+      (with gst_all_1; [
+        gstreamer
+        gst-plugins-base
+        gst-plugins-good
+        gst-plugins-ugly
+        gst-plugins-bad
+        gst-libav
+      ]);
     in toString [
       # This flag should be picked up through pkg-config, but it isn't.
       "-I${gst_all_1.gstreamer.dev}/lib/gstreamer-1.0/include"
@@ -70,4 +61,12 @@ stdenv.mkDerivation rec {
   cmakeFlags = [
     "-DCMAKE_BUILD_TYPE=${if debug then "Debug" else "Release"}"
   ];
+
+  meta = with lib; {
+    homepage = "https://phonon.kde.org/";
+    description = "GStreamer backend for Phonon";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ ttuegel ];
+    license = licenses.lgpl21;
+  };
 }
diff --git a/pkgs/development/libraries/thrift/default.nix b/pkgs/development/libraries/thrift/default.nix
index fd6b21a94f7..acb3a240487 100644
--- a/pkgs/development/libraries/thrift/default.nix
+++ b/pkgs/development/libraries/thrift/default.nix
@@ -16,11 +16,11 @@
 
 stdenv.mkDerivation rec {
   pname = "thrift";
-  version = "0.18.0";
+  version = "0.18.1";
 
   src = fetchurl {
     url = "https://archive.apache.org/dist/thrift/${version}/${pname}-${version}.tar.gz";
-    hash = "sha256-fBk4nLeRCiDli45GkDyMGjY1MAj5/MGwP3SKzPm18+E=";
+    hash = "sha256-BMbxDl14jKeOE+4u8NIVLHsHDAr1VIPWuULinP8pZyY=";
   };
 
   # Workaround to make the Python wrapper not drop this package:
@@ -102,6 +102,9 @@ stdenv.mkDerivation rec {
     "SecurityFromBufferTest"
     "python_test"
 
+    # fails on hydra, passes locally
+    "concurrency_test"
+
     # Tests that fail in the Darwin sandbox when trying to use network
     "UnitTests"
     "TInterruptTest"
diff --git a/pkgs/development/python-modules/asyncua/default.nix b/pkgs/development/python-modules/asyncua/default.nix
index 7e36099f186..0ad561ebfb9 100644
--- a/pkgs/development/python-modules/asyncua/default.nix
+++ b/pkgs/development/python-modules/asyncua/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , aiofiles
 , aiosqlite
 , buildPythonPackage
@@ -60,6 +61,17 @@ buildPythonPackage rec {
     "asyncua"
   ];
 
+  disabledTests = lib.optionals stdenv.isDarwin [
+    # Failed: DID NOT RAISE <class 'asyncio.exceptions.TimeoutError'>
+    "test_publish"
+    # OSError: [Errno 48] error while attempting to bind on address ('127.0.0.1',...
+    "test_anonymous_rejection"
+    "test_certificate_handling_success"
+    "test_encrypted_private_key_handling_success"
+    "test_encrypted_private_key_handling_success_with_cert_props"
+    "test_encrypted_private_key_handling_failure"
+  ];
+
   meta = with lib; {
     description = "OPC UA / IEC 62541 Client and Server for Python";
     homepage = "https://github.com/FreeOpcUa/opcua-asyncio";
diff --git a/pkgs/development/python-modules/azure-mgmt-netapp/default.nix b/pkgs/development/python-modules/azure-mgmt-netapp/default.nix
index 4bd9877c48a..46061f5a002 100644
--- a/pkgs/development/python-modules/azure-mgmt-netapp/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-netapp/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-netapp";
-  version = "10.0.0";
+  version = "10.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-9+cXsY8Qr5ds9lYw39duWdcqm6QUTedQbjn8x6zJoyE=";
+    hash = "sha256-eJiWTOCk2C79Jotku9bKlu3vU6H8004hWrX+h76MjQM=";
     extension = "zip";
   };
 
diff --git a/pkgs/development/python-modules/discogs-client/default.nix b/pkgs/development/python-modules/discogs-client/default.nix
index 49a563fcba8..ad4268b8f71 100644
--- a/pkgs/development/python-modules/discogs-client/default.nix
+++ b/pkgs/development/python-modules/discogs-client/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "discogs-client";
-  version = "2.6";
+  version = "2.7";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "joalla";
     repo = "discogs_client";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Si1EH5TalNC3BY7L/GqbGSCjDBWzbodB4NZlNayhZYs=";
+    hash = "sha256-sTzYhUKPqaCE553FqWR4qdtDDtymhuybHWiDOUwgglA=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/nbconflux/default.nix b/pkgs/development/python-modules/nbconflux/default.nix
index 2de84cf20ea..c986085a61e 100644
--- a/pkgs/development/python-modules/nbconflux/default.nix
+++ b/pkgs/development/python-modules/nbconflux/default.nix
@@ -16,14 +16,19 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "Valassis-Digital-Media";
     repo = "nbconflux";
-    rev = version;
-    sha256 = "1708qkb275d6f7b4b5zmqx3i0jh56nrx2n9rwwp5nbaah5p2wwlh";
+    rev = "refs/tags/${version}";
+    hash = "sha256-kHIuboFKLVsu5zlZ0bM1BUoQR8f1l0XWcaaVI9bECJw=";
   };
 
   propagatedBuildInputs = [ nbconvert requests ];
 
   nativeCheckInputs = [ pytestCheckHook responses ];
 
+  patches = [
+    # The original setup.py file is missing commas in the install_requires list
+    ./setup-py.patch
+  ];
+
   JUPYTER_PATH="${nbconvert}/share/jupyter";
   disabledTests = [
     "test_post_to_confluence"
diff --git a/pkgs/development/python-modules/nbconflux/setup-py.patch b/pkgs/development/python-modules/nbconflux/setup-py.patch
new file mode 100644
index 00000000000..1e92e2dd11c
--- /dev/null
+++ b/pkgs/development/python-modules/nbconflux/setup-py.patch
@@ -0,0 +1,16 @@
+diff --git a/setup.py b/setup.py
+index 26f882d..b7ccf67 100644
+--- a/setup.py
++++ b/setup.py
+@@ -27,8 +27,8 @@ setup(
+         ]
+     },
+     install_requires=[
+-        'nbconvert>=5.3'
+-        'requests'
+-        'traitlets'
++        'nbconvert>=5.3',
++        'requests',
++        'traitlets',
+     ],
+ )
diff --git a/pkgs/development/python-modules/pyxnat/default.nix b/pkgs/development/python-modules/pyxnat/default.nix
index 16ba6b4de94..e8956dba348 100644
--- a/pkgs/development/python-modules/pyxnat/default.nix
+++ b/pkgs/development/python-modules/pyxnat/default.nix
@@ -1,21 +1,27 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , pythonOlder
-, nose
+, pytestCheckHook
 , lxml
+, matplotlib
+, networkx
+, pandas
 , requests
 , six
 }:
 
 buildPythonPackage rec {
   pname = "pyxnat";
-  version = "1.5";
-  disabled = pythonOlder "3.7";
+  version = "1.6";
+  disabled = pythonOlder "3.8";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-Y8mj6OfZXyE1q3C8HyVzGySuZB6rLSsL/CV/7axxaec=";
+  # PyPI dist missing test configuration files:
+  src = fetchFromGitHub {
+    owner = "pyxnat";
+    repo = "pyxnat";
+    rev = "refs/tags/${version}";
+    hash = "sha256-QejYisvQFN7CsDOx9wAgTHmRZcSEqgIr8twG4XucfZ4=";
   };
 
   propagatedBuildInputs = [
@@ -30,17 +36,37 @@ buildPythonPackage rec {
     substituteInPlace setup.py \
       --replace "pathlib>=1.0" "" \
       --replace "future>=0.16" ""
+    sed -i '/--cov/d' setup.cfg
   '';
 
-  nativeCheckInputs = [ nose ];
-  checkPhase = "nosetests pyxnat/tests";
-  doCheck = false;  # requires a docker container running an XNAT server
+  nativeCheckInputs = [
+    pytestCheckHook
+    matplotlib
+    networkx
+    pandas
+  ];
+  preCheck = ''
+    export PYXNAT_SKIP_NETWORK_TESTS=1
+  '';
+  pytestFlagsArray = [ "pyxnat" ];
+  disabledTestPaths = [
+    # try to access network even though PYXNAT_SKIP_NETWORK_TESTS is set:
+    "pyxnat/tests/pipelines_test.py"
+    "pyxnat/tests/search_test.py"
+    "pyxnat/tests/user_and_project_management_test.py"
+  ];
+  disabledTests = [
+    # try to access network even though PYXNAT_SKIP_NETWORK_TESTS is set:
+    "test_ashs_volumes"
+    "test_inspector_structure"
+  ];
 
   pythonImportsCheck = [ "pyxnat" ];
 
   meta = with lib; {
     homepage = "https://pyxnat.github.io/pyxnat";
     description = "Python API to XNAT";
+    changelog = "https://github.com/pyxnat/pyxnat/releases/tag/${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ bcdarwin ];
   };
diff --git a/pkgs/development/python-modules/vcard/default.nix b/pkgs/development/python-modules/vcard/default.nix
new file mode 100644
index 00000000000..d984e7c106c
--- /dev/null
+++ b/pkgs/development/python-modules/vcard/default.nix
@@ -0,0 +1,34 @@
+{ buildPythonPackage
+, fetchFromGitLab
+, lib
+, pytestCheckHook
+, python-dateutil
+, pythonAtLeast
+, pythonOlder
+}:
+buildPythonPackage rec {
+  pname = "vcard";
+  version = "0.15.4";
+
+  disabled = pythonOlder "3.8" || pythonAtLeast "3.12";
+
+  src = fetchFromGitLab {
+    owner = "engmark";
+    repo = "vcard";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-7GNq6PoWZgwhhpxhWOkUEpqckeSfzocex1ZGN9CTJyo=";
+  };
+
+  propagatedBuildInputs = [ python-dateutil ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "vcard" ];
+
+  meta = {
+    homepage = "https://gitlab.com/engmark/vcard";
+    description = "vCard validator, class and utility functions";
+    license = lib.licenses.agpl3Plus;
+    maintainers = [ lib.maintainers.l0b0 ];
+  };
+}
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index a2b9f297ab3..f2065d41068 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "sbt";
-  version = "1.9.2";
+  version = "1.9.3";
 
   src = fetchurl {
     url = "https://github.com/sbt/sbt/releases/download/v${finalAttrs.version}/sbt-${finalAttrs.version}.tgz";
-    hash = "sha256-XdQ69GFnoboN9jhZv65uNS++1SXnZiLY69yJFCIlMrI=";
+    hash = "sha256-nM+UTsyzPGaDDvn/nUbDQCdBzcbYgyUQRSYdsz50joI=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/gen-license/default.nix b/pkgs/development/tools/gen-license/default.nix
new file mode 100644
index 00000000000..a3495866576
--- /dev/null
+++ b/pkgs/development/tools/gen-license/default.nix
@@ -0,0 +1,27 @@
+{ lib
+, stdenv
+, rustPlatform
+, fetchCrate
+, Security
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "gen-license";
+  version = "0.1.2";
+
+  src = fetchCrate {
+    inherit pname version;
+    sha256 = "sha256-YZcycLQ436cjr2YTT7TEyMdeLTOl9oEfa5x3lgnnYyo=";
+  };
+
+  cargoHash = "sha256-2PT20eoXxBPhGsmHlEEGE2ZDyhyrD7tFdwnn3khjKNo=";
+
+  buildInputs = lib.optional stdenv.isDarwin Security;
+
+  meta = with lib; {
+    description = "Create licenses for your projects right from your terminal";
+    homepage = "https://github.com/nexxeln/license-generator";
+    license = licenses.mit;
+    maintainers = [ maintainers.ryanccn ];
+  };
+}
diff --git a/pkgs/development/tools/lazygit/default.nix b/pkgs/development/tools/lazygit/default.nix
index 70e92fabcc6..e26184cd744 100644
--- a/pkgs/development/tools/lazygit/default.nix
+++ b/pkgs/development/tools/lazygit/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "lazygit";
-  version = "0.39.3";
+  version = "0.39.4";
 
   src = fetchFromGitHub {
     owner = "jesseduffield";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-VIWNuCHO41Wf6KM6Fz6BGzl/nS/SFprZpJUz7ZxaoJc=";
+    hash = "sha256-1eJmnLsQrcGw+A0rGXfZUFHwJAthZSNhNcc2zt/dx5M=";
   };
 
   vendorHash = null;
@@ -21,6 +21,6 @@ buildGoModule rec {
     homepage = "https://github.com/jesseduffield/lazygit";
     changelog = "https://github.com/jesseduffield/lazygit/releases/tag/v${version}";
     license = licenses.mit;
-    maintainers = with maintainers; [ equirosa Br1ght0ne ];
+    maintainers = with maintainers; [ Br1ght0ne equirosa paveloom ];
   };
 }
diff --git a/pkgs/development/tools/rust/cargo-diet/default.nix b/pkgs/development/tools/rust/cargo-diet/default.nix
index f3804f4d170..da3036187e2 100644
--- a/pkgs/development/tools/rust/cargo-diet/default.nix
+++ b/pkgs/development/tools/rust/cargo-diet/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-diet";
-  version = "1.2.5";
+  version = "1.2.7";
 
   src = fetchFromGitHub {
     owner = "the-lean-crate";
-    repo = pname;
+    repo = "cargo-diet";
     rev = "v${version}";
-    sha256 = "sha256-JzhSTbEf2Yl5cEIb+88y+s8lUN6c1Mir4NYvzAWMZwY=";
+    hash = "sha256-SuJ1H/2YfSVVigdgLUd9veMClI7ZT7xkkyQ4PfXoQdQ=";
   };
 
-  cargoSha256 = "sha256-zW6ec8DHzP6AuNI6fcOQLH03ca+/yjdh56nltSM9pAA=";
+  cargoHash = "sha256-MASftcn3WmB3M6bvmtnK3nlroE8nq9zdkleSEgzA5lk=";
 
   meta = with lib; {
     description = "Help computing optimal include directives for your Cargo.toml manifest";
diff --git a/pkgs/development/tools/yarn-berry/default.nix b/pkgs/development/tools/yarn-berry/default.nix
new file mode 100644
index 00000000000..b8181e812fc
--- /dev/null
+++ b/pkgs/development/tools/yarn-berry/default.nix
@@ -0,0 +1,43 @@
+{ fetchFromGitHub, lib, nodejs, stdenv, yarn }:
+
+stdenv.mkDerivation rec {
+  name = "yarn-berry";
+  version = "3.4.1";
+
+  src = fetchFromGitHub {
+    owner = "yarnpkg";
+    repo = "berry";
+    rev = "@yarnpkg/cli/${version}";
+    hash = "sha256-eBBB/F+mnGi93Qf23xgt306/ogoV76RXOM90O14u5Tw=";
+  };
+
+  buildInputs = [
+    nodejs
+  ];
+
+  nativeBuildInputs = [
+    yarn
+  ];
+
+  dontConfigure = true;
+
+  buildPhase = ''
+    runHook preBuild
+    yarn workspace @yarnpkg/cli build:cli
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    install -Dm 755 ./packages/yarnpkg-cli/bundles/yarn.js "$out/bin/yarn"
+    runHook postInstall
+  '';
+
+   meta = with lib; {
+    homepage = "https://yarnpkg.com/";
+    description = "Fast, reliable, and secure dependency management.";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ ryota-ka ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/games/jazz2/game.nix b/pkgs/games/jazz2/game.nix
index d29d1342fd9..22ddbfe337a 100644
--- a/pkgs/games/jazz2/game.nix
+++ b/pkgs/games/jazz2/game.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "jazz2";
-  version = "2.0.0";
+  version = "2.1.0";
 
   src = fetchFromGitHub {
     owner = "deathkiller";
     repo = "jazz2-native";
     rev = version;
-    sha256 = "IJhMxnOUam6MdT5f0JBThf/sV4WxA++gpBMB2cGqJ14=";
+    sha256 = "nJha7+geP2Ov7ciEDzJ+XWdiF1jzv4Oeis1DwxcpJXo=";
   };
 
   patches = [ ./nocontent.patch ];
diff --git a/pkgs/misc/opcua-client-gui/default.nix b/pkgs/misc/opcua-client-gui/default.nix
index 2c684060758..361b2627c97 100644
--- a/pkgs/misc/opcua-client-gui/default.nix
+++ b/pkgs/misc/opcua-client-gui/default.nix
@@ -1,22 +1,32 @@
 { lib
-, python3
+, stdenv
+, python3Packages
 , fetchFromGitHub
 , makeDesktopItem
 , copyDesktopItems
+, desktopToDarwinBundle
+, wrapQtAppsHook
 }:
 
-python3.pkgs.buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
   pname = "opcua-client-gui";
   version = "0.8.4";
 
   src = fetchFromGitHub {
     owner = "FreeOpcUa";
-    repo = pname;
+    repo = "opcua-client-gui";
     rev = version;
     hash = "sha256-0BH1Txr3z4a7iFcsfnovmBUreXMvIX2zpZa8QivQVx8=";
   };
 
-  propagatedBuildInputs = with python3.pkgs; [
+  nativeBuildInputs = [ copyDesktopItems wrapQtAppsHook ]
+    ++ lib.optionals stdenv.isDarwin [ desktopToDarwinBundle ];
+
+  makeWrapperArgs = [
+    "\${qtWrapperArgs[@]}"
+  ];
+
+  propagatedBuildInputs = with python3Packages; [
     pyqt5
     asyncua
     opcua-widgets
@@ -43,7 +53,7 @@ python3.pkgs.buildPythonApplication rec {
   meta = with lib; {
     description = "OPC UA GUI Client";
     homepage = "https://github.com/FreeOpcUa/opcua-client-gui";
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ janik ];
   };
diff --git a/pkgs/servers/homepage-dashboard/default.nix b/pkgs/servers/homepage-dashboard/default.nix
index 1c8c283e9c3..f09523cd761 100644
--- a/pkgs/servers/homepage-dashboard/default.nix
+++ b/pkgs/servers/homepage-dashboard/default.nix
@@ -2,6 +2,9 @@
 , fetchFromGitHub
 , nodePackages
 , python3
+, stdenv
+, cctools
+, IOKit
 , lib
 , fetchpatch
 , makeBinaryWrapper
@@ -10,24 +13,16 @@
 
 buildNpmPackage rec {
   pname = "homepage-dashboard";
-  version = "0.6.21";
+  version = "0.6.23";
 
   src = fetchFromGitHub {
     owner = "benphelps";
     repo = "homepage";
     rev = "v${version}";
-    hash = "sha256-kjxA02hJj/GAQ0fM1xTtXAnZSQgVyE+EMRrXis1Vr+o=";
+    hash = "sha256-Nr090221lTW7luuzh/URdDPByILnjMChyZcV2+AUG3o=";
   };
 
-  npmDepsHash = "sha256-O6SQYx5vxscMsbWv0ynUYqdUkOp/nMtdvlZ/Mp95sBY=";
-
-  patches = [
-    (fetchpatch {
-      name = "env-config-dir.patch";
-      url = "https://github.com/benphelps/homepage/commit/ca396ce96bce52f6c06a321f292aa94a66ceeb97.patch";
-      hash = "sha256-eNnW/ce4ytoKR6jH1Ztc4UTWOmL0uGRdY6nYBIVYM6k=";
-    })
-  ];
+  npmDepsHash = "sha256-l6kVmKXAQMqpzu/GTrz92WeDorLhunfcUrbMVfUwR9U=";
 
   preBuild = ''
     mkdir -p config
@@ -39,8 +34,14 @@ buildNpmPackage rec {
     patchShebangs .next/standalone/server.js
   '';
 
+  nativeBuildInputs = lib.optionals stdenv.isDarwin [
+    cctools
+  ];
+
   buildInputs = [
     nodePackages.node-gyp-build
+  ] ++ lib.optionals stdenv.isDarwin [
+    IOKit
   ];
 
   env.PYTHON = "${python3}/bin/python";
@@ -68,7 +69,7 @@ buildNpmPackage rec {
   doDist = false;
 
   passthru.tests = {
-    inherit (nixosTests) homepage;
+    inherit (nixosTests) homepage-dashboard;
   };
 
   meta = {
diff --git a/pkgs/servers/jackett/default.nix b/pkgs/servers/jackett/default.nix
index 4ff7acfee2f..2d45a39fe8a 100644
--- a/pkgs/servers/jackett/default.nix
+++ b/pkgs/servers/jackett/default.nix
@@ -9,13 +9,13 @@
 
 buildDotnetModule rec {
   pname = "jackett";
-  version = "0.21.484";
+  version = "0.21.532";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    hash = "sha512-gjDhbtPV4wWOZUn7YJ9buoiukp5vkSU9Rk1+IBAzphoYKFdgzLqYDVJcrIBEAJks5KBAmMSIBY2Kdfb1WC5KvQ==";
+    hash = "sha512-WBfFfE8KKkGViMNlxAv+MDt8HMSNQPpaxdxeIC75O02ldVr8rsMpyAdAVw+gH2KQhyJP3VGnLk++FhUCfFCLiw==";
   };
 
   projectFile = "src/Jackett.Server/Jackett.Server.csproj";
diff --git a/pkgs/tools/admin/pbm/default.nix b/pkgs/tools/admin/pbm/default.nix
index 7a1997f1d19..39445a52354 100644
--- a/pkgs/tools/admin/pbm/default.nix
+++ b/pkgs/tools/admin/pbm/default.nix
@@ -2,9 +2,9 @@
 
 buildDotnetGlobalTool {
   pname = "pbm";
-  version = "1.3.1";
+  version = "1.3.2";
 
-  nugetSha256 = "sha256-ZG2HFyKYhVNVYd2kRlkbAjZJq88OADe3yjxmLuxXDUo=";
+  nugetSha256 = "sha256-xu3g8NFLZYnHzBuoIhIiAzaPJqY0xhLWLYi+ORRADH8=";
 
   meta = with lib; {
     description = "CLI for managing Akka.NET applications and Akka.NET Clusters.";
diff --git a/pkgs/tools/misc/dotter/default.nix b/pkgs/tools/misc/dotter/default.nix
index a78a70e4a1a..1356a3908d6 100644
--- a/pkgs/tools/misc/dotter/default.nix
+++ b/pkgs/tools/misc/dotter/default.nix
@@ -9,7 +9,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "dotter";
-  version = "0.12.16";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner = "SuperCuber";
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
     hash = "sha256-mAvTy/11a9RGSQpElhpKMzsMC7vA7cbeHsNRy9MnIjw=";
   };
 
-  cargoHash = "sha256-lVhATGh4pP7xj/L8XmPe5fuUUjwPz6qgCtOzIheOvGk=";
+  cargoHash = "sha256-XsDp/ssoNVdTHDTPm2ucgBeYmFgbeBIxQ/NsGjCl5Qg=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
 
diff --git a/pkgs/tools/misc/twspace-dl/default.nix b/pkgs/tools/misc/twspace-dl/default.nix
index 403562e039f..48f760b0e0f 100644
--- a/pkgs/tools/misc/twspace-dl/default.nix
+++ b/pkgs/tools/misc/twspace-dl/default.nix
@@ -1,30 +1,32 @@
-{ lib, python3Packages, fetchPypi, ffmpeg }:
+{ lib, python3Packages, fetchPypi, ffmpeg-headless }:
 
 python3Packages.buildPythonApplication rec {
   pname = "twspace-dl";
-  version = "2023.1.22.1";
+  version = "2023.7.24.1";
 
   format = "pyproject";
 
   src = fetchPypi {
     inherit version;
     pname = "twspace_dl";
-    sha256 = "050e78b4583374351c288114e3b01ab34b0b19ad2d4971d15c5519521cf3f2f4";
+    sha256 = "sha256-Oq9k5Nfixf1vihhna7g3ZkqCwEtCdnvlbxIuOnGVoKE=";
   };
 
   nativeBuildInputs = with python3Packages; [ poetry-core ];
 
   propagatedBuildInputs = with python3Packages; [
+    mutagen
     requests
   ];
 
-  makeWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ ffmpeg ]}" ];
+  makeWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ ffmpeg-headless ]}" ];
 
   pythonImportsCheck = [ "twspace_dl" ];
 
   meta = with lib; {
     description = "A python module to download twitter spaces";
     homepage = "https://github.com/HoloArchivists/twspace-dl";
+    changelog = "https://github.com/HoloArchivists/twspace-dl/releases/tag/${version}";
     license = licenses.gpl2Only;
     maintainers = with maintainers; [ marsam ];
     mainProgram = "twspace_dl";
diff --git a/pkgs/tools/networking/sing-box/default.nix b/pkgs/tools/networking/sing-box/default.nix
index 1e15eaf9a19..c12c31e9965 100644
--- a/pkgs/tools/networking/sing-box/default.nix
+++ b/pkgs/tools/networking/sing-box/default.nix
@@ -11,16 +11,16 @@
 
 buildGoModule rec {
   pname = "sing-box";
-  version = "1.3.0";
+  version = "1.3.3";
 
   src = fetchFromGitHub {
     owner = "SagerNet";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-+zEjuoGFAZhajUCFPZXNr1SoAprjOsHf12nVCbDKOeY=";
+    hash = "sha256-I6e0PkF52sCKPtQIOIlYdpWzySDnEqX8KmK/e29CQG8=";
   };
 
-  vendorHash = "sha256-KJEjqcwtsNEByTQjp+TU9Yct/CJD8F9fnGuq9eeGtpQ=";
+  vendorHash = "sha256-CL+N2w8g5aMysFlPgPLszqjPu8MULoQ/xpz8Wd3lI6k=";
 
   tags = [
     "with_quic"
diff --git a/pkgs/tools/package-management/apkg/default.nix b/pkgs/tools/package-management/apkg/default.nix
index ebd1e15909f..901a7aeff2b 100644
--- a/pkgs/tools/package-management/apkg/default.nix
+++ b/pkgs/tools/package-management/apkg/default.nix
@@ -4,47 +4,38 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "apkg";
-  version = "0.4.0";
+  version = "0.4.1";
+  format = "pyproject";
 
   src = fetchFromGitLab {
     domain = "gitlab.nic.cz";
     owner = "packaging";
     repo = pname;
     rev = "v${version}";
-    sha256 = "duZz2Kwjgek5pMJTDH8gMZAZ13uFwaIYT5E1brW7I7U=";
+    sha256 = "x7UYkqkF1XJ3OMfQpIQ4+27KI0dLvL42Wms5xQTY/H4=";
   };
 
-  # TODO: solve this properly.  Detection won't work anymore.
-  postPatch = ''
-    patch <<-EOF
-      --- a/setup.py
-      +++ b/setup.py
-      @@ -25,1 +25,1 @@
-      -    version=version,
-      +    version='${version}',
-    EOF
-  '';
-
   propagatedBuildInputs = with python3Packages; [
     # copy&pasted requirements.txt (almost exactly)
     beautifulsoup4   # upstream version detection
-    blessings        # terminal colors
+    blessed          # terminal colors
     build            # apkg distribution
-    cached-property  # @cached_property for python <= 3.7
+    cached-property  # for python <= 3.7; but pip complains even with 3.8
     click            # nice CLI framework
     distro           # current distro detection
     jinja2           # templating
     packaging        # version parsing
     requests         # HTTP for humans™
-    setuptools       # required by minver
     toml             # config files
   ];
 
+  nativeBuildInputs = with python3Packages; [ hatchling ];
+
   makeWrapperArgs = [ # deps for `srcpkg` operation for other distros; could be optional
     "--prefix" "PATH" ":" (lib.makeBinPath [ gitMinimal rpm dpkg fakeroot ])
   ];
 
-  nativeCheckInputs = with python3Packages; [ pytest ];
+  nativeCheckInputs = with python3Packages; [ pytest dunamai ];
   checkPhase = ''
     runHook preCheck
     py.test # inspiration: .gitlab-ci.yml
diff --git a/pkgs/tools/security/osv-detector/default.nix b/pkgs/tools/security/osv-detector/default.nix
index 63d4e07a7b5..58db4504d23 100644
--- a/pkgs/tools/security/osv-detector/default.nix
+++ b/pkgs/tools/security/osv-detector/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "osv-detector";
-  version = "0.6.0";
+  version = "0.11.1";
 
   src = fetchFromGitHub {
     owner = "G-Rath";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-Y/9q4ZJ4vxDitqrM4hGe49iqLYk4ebhTs4jrD7P8fdw=";
+    hash = "sha256-vIkLrKyDeMfRe/0EPhlKlHAO6XB0/OFY5mTUHeZbcg8=";
   };
 
-  vendorSha256 = "sha256-KAxpDQIRrLZIOvfW8wf0CV4Fj6l3W6nNZNCH3ZE6yJc=";
+  vendorHash = "sha256-Rrosye8foVntoFDvDmyNuXgnEgjzcOXenOKBMZVCRio=";
 
   ldflags = [
     "-w"
@@ -24,6 +24,22 @@ buildGoModule rec {
     "-X main.version=${version}"
   ];
 
+  checkFlags =
+    let
+      skippedTests = [
+        # Disable tests requiring network access
+        "TestRun_ParseAs_CsvFile"
+        "TestRun_ParseAs_CsvRow"
+        "TestRun_DBs"
+        "TestRun_Lockfile"
+        "TestRun_ParseAsGlobal"
+        "TestRun_Ignores"
+        "TestRun_ParseAsSpecific"
+        "TestRun_Configs"
+      ];
+    in
+    [ "-skip" "${builtins.concatStringsSep "|" skippedTests}" ];
+
   passthru.tests.version = testers.testVersion {
     package = osv-detector;
     command = "osv-detector -version";
diff --git a/pkgs/tools/text/repgrep/default.nix b/pkgs/tools/text/repgrep/default.nix
index d732687b342..5bce7d2f2b9 100644
--- a/pkgs/tools/text/repgrep/default.nix
+++ b/pkgs/tools/text/repgrep/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "repgrep";
-  version = "0.14.1";
+  version = "0.14.2";
 
   src = fetchFromGitHub {
     owner = "acheronfail";
     repo = "repgrep";
     rev = version;
-    hash = "sha256-B3p1h1A8To7yDdioTr7d+C4/231YA7F45QKnzPb0AZs=";
+    hash = "sha256-sclBzv3F3M3oARRm0cNg/ABomzfgbDp0cFOXkRYjGEY=";
   };
 
-  cargoHash = "sha256-V2jsH48QavHlCQQ3w3IoqlgOkY3SKXwVYhoa4KURruk=";
+  cargoHash = "sha256-o6pF32sNiDuCjsBaa5beZyFCv1PoqALZOhAb0GF0XyQ=";
 
   nativeBuildInputs = [
     asciidoctor
diff --git a/pkgs/tools/video/go2rtc/default.nix b/pkgs/tools/video/go2rtc/default.nix
index b35a1b0e6ab..ec787a0b1da 100644
--- a/pkgs/tools/video/go2rtc/default.nix
+++ b/pkgs/tools/video/go2rtc/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "go2rtc";
-  version = "1.6.0";
+  version = "1.6.2";
 
   src = fetchFromGitHub {
     owner = "AlexxIT";
     repo = "go2rtc";
     rev = "refs/tags/v${version}";
-    hash = "sha256-QRyzhNGdE7aGXyPxznA0FuVazu96Rd6NiiG1GHjN2ns=";
+    hash = "sha256-LKaVspv9R2N7og+3gb/vZuiWzWt1w+LEQ1Sk737+O7c=";
   };
 
   vendorHash = "sha256-C2bRSzLp86aMF3UIGJ2G5WXvUaLjyhqzPsQkDSI0qb0=";
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 2a7cdb93fdb..caf62bf2358 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1694,6 +1694,10 @@ with pkgs;
 
   gen6dns = callPackage ../tools/networking/gen6dns { };
 
+  gen-license = callPackage ../development/tools/gen-license {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
+
   github-copilot-cli = callPackage ../tools/misc/github-copilot-cli { };
 
   gfshare = callPackage ../tools/security/gfshare { };
@@ -2684,12 +2688,11 @@ with pkgs;
       { inherit retroarch settings; };
 
   retroarch = wrapRetroArch {
-    retroarch = retroarchBare.override {
-      withAssets = true;
-      withCoreInfo = true;
-    };
+    retroarch = retroarchBare;
     settings = {
+      assets_directory = "${retroarch-assets}/share/retroarch/assets";
       joypad_autoconfig_dir = "${retroarch-joypad-autoconfig}/share/libretro/autoconfig";
+      libretro_info_path = "${libretro-core-info}/share/retroarch/cores";
     };
   };
 
@@ -5452,7 +5455,10 @@ with pkgs;
 
   home-manager = callPackage ../tools/package-management/home-manager { };
 
-  homepage-dashboard = callPackage ../servers/homepage-dashboard { };
+  homepage-dashboard = callPackage ../servers/homepage-dashboard {
+    inherit (darwin) cctools;
+    inherit (darwin.apple_sdk.frameworks) IOKit;
+  };
 
   hostsblock = callPackage ../tools/misc/hostsblock { };
 
@@ -14681,6 +14687,8 @@ with pkgs;
 
   yarn = callPackage ../development/tools/yarn  { };
 
+  yarn-berry = callPackage ../development/tools/yarn-berry { };
+
   yarn2nix-moretea = callPackage ../development/tools/yarn2nix-moretea/yarn2nix { pkgs = pkgs.__splicedPackages; };
 
   inherit (yarn2nix-moretea)
@@ -17250,6 +17258,8 @@ with pkgs;
 
   vala-lint = callPackage ../development/tools/vala-lint { };
 
+  vcard = python3Packages.toPythonApplication python3Packages.vcard;
+
   inherit (callPackage ../development/compilers/vala { })
     vala_0_48
     vala_0_54
@@ -24877,6 +24887,8 @@ with pkgs;
 
   stxxl = callPackage ../development/libraries/stxxl { };
 
+  sv-lang = callPackage ../applications/science/electronics/sv-lang { };
+
   sqlite = lowPrio (callPackage ../development/libraries/sqlite { });
 
   unqlite = lowPrio (callPackage ../development/libraries/unqlite { });
@@ -26104,6 +26116,8 @@ with pkgs;
 
   glabels = callPackage ../applications/graphics/glabels { };
 
+  glabels-qt = libsForQt5.callPackage ../applications/graphics/glabels-qt { };
+
   nats-server = callPackage ../servers/nats-server { };
 
   go-autoconfig = callPackage ../servers/go-autoconfig { };
@@ -32614,6 +32628,8 @@ with pkgs;
 
   kapow = libsForQt5.callPackage ../applications/misc/kapow { };
 
+  kbt = callPackage ../applications/misc/kbt { };
+
   kchmviewer = libsForQt5.callPackage ../applications/misc/kchmviewer { };
 
   kappanhang = callPackage ../applications/radio/kappanhang { };
@@ -32875,6 +32891,8 @@ with pkgs;
     electron = electron_22;
   };
 
+  timoni = callPackage ../applications/networking/cluster/timoni { };
+
   kvirc = libsForQt5.callPackage ../applications/networking/irc/kvirc { };
 
   lame = callPackage ../development/libraries/lame { };
@@ -33651,7 +33669,7 @@ with pkgs;
 
   opcr-policy = callPackage ../development/tools/opcr-policy { };
 
-  opcua-client-gui = callPackage ../misc/opcua-client-gui { };
+  opcua-client-gui = libsForQt5.callPackage ../misc/opcua-client-gui { };
 
   open-policy-agent = callPackage ../development/tools/open-policy-agent { };
 
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index ea024e3e8f1..726c23a090f 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -13206,6 +13206,8 @@ self: super: with self; {
 
   vat-moss = callPackage ../development/python-modules/vat-moss { };
 
+  vcard = callPackage ../development/python-modules/vcard { };
+
   vcrpy = callPackage ../development/python-modules/vcrpy { };
 
   vcver = callPackage ../development/python-modules/vcver { };