about summary refs log tree commit diff
path: root/pkgs/tools
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools')
-rw-r--r--pkgs/tools/admin/awscli2/default.nix6
-rw-r--r--pkgs/tools/admin/bom/default.nix6
-rw-r--r--pkgs/tools/admin/docker-credential-gcr/default.nix4
-rw-r--r--pkgs/tools/admin/kics/default.nix6
-rw-r--r--pkgs/tools/admin/meraki-cli/default.nix58
-rw-r--r--pkgs/tools/admin/pulumi-bin/data.nix242
-rw-r--r--pkgs/tools/admin/pulumi-bin/default.nix1
-rw-r--r--pkgs/tools/admin/qovery-cli/default.nix4
-rw-r--r--pkgs/tools/admin/stripe-cli/default.nix6
-rw-r--r--pkgs/tools/admin/swapspace/default.nix19
-rw-r--r--pkgs/tools/admin/syft/default.nix8
-rw-r--r--pkgs/tools/audio/mpd-mpris/default.nix4
-rw-r--r--pkgs/tools/audio/tts/default.nix8
-rw-r--r--pkgs/tools/backup/fabs/default.nix66
-rw-r--r--pkgs/tools/backup/mydumper/default.nix4
-rw-r--r--pkgs/tools/backup/rustic-rs/default.nix6
-rw-r--r--pkgs/tools/backup/tsm-client/default.nix13
-rw-r--r--pkgs/tools/compression/xz/default.nix4
-rw-r--r--pkgs/tools/filesystems/ceph/0000-fix-SPDK-build-env.patch11
-rw-r--r--pkgs/tools/filesystems/ceph/default.nix307
-rw-r--r--pkgs/tools/filesystems/fuse-7z-ng/default.nix4
-rw-r--r--pkgs/tools/filesystems/fuse-7z-ng/zero-init-fuse-operations.patch13
-rw-r--r--pkgs/tools/filesystems/gcsfuse/default.nix4
-rw-r--r--pkgs/tools/filesystems/glusterfs/default.nix4
-rw-r--r--pkgs/tools/filesystems/glusterfs/ssl_cert_path.patch2
-rw-r--r--pkgs/tools/filesystems/juicefs/default.nix6
-rw-r--r--pkgs/tools/filesystems/mergerfs/default.nix4
-rw-r--r--pkgs/tools/filesystems/mtools/default.nix8
-rwxr-xr-xpkgs/tools/filesystems/mtools/update.sh6
-rw-r--r--pkgs/tools/filesystems/stratis-cli/default.nix4
-rw-r--r--pkgs/tools/games/gamemode/default.nix6
-rw-r--r--pkgs/tools/graphics/pfstools/default.nix6
-rw-r--r--pkgs/tools/graphics/resvg/default.nix6
-rw-r--r--pkgs/tools/graphics/spirv-cross/default.nix4
-rw-r--r--pkgs/tools/graphics/vulkan-extension-layer/default.nix16
-rw-r--r--pkgs/tools/graphics/vulkan-tools-lunarg/default.nix18
-rw-r--r--pkgs/tools/graphics/vulkan-tools/default.nix19
-rw-r--r--pkgs/tools/inputmethods/fcitx5/fcitx5-mozc.nix12
-rw-r--r--pkgs/tools/inputmethods/uim/default.nix1
-rw-r--r--pkgs/tools/misc/aichat/default.nix37
-rw-r--r--pkgs/tools/misc/cc2538-bsl/default.nix36
-rw-r--r--pkgs/tools/misc/chatgpt-cli/default.nix6
-rw-r--r--pkgs/tools/misc/clipboard-jh/default.nix11
-rw-r--r--pkgs/tools/misc/depotdownloader/default.nix2
-rw-r--r--pkgs/tools/misc/desktop-file-utils/default.nix38
-rw-r--r--pkgs/tools/misc/dt-shell-color-scripts/default.nix45
-rw-r--r--pkgs/tools/misc/dwt1-shell-color-scripts/default.nix52
-rw-r--r--pkgs/tools/misc/enumer/default.nix6
-rw-r--r--pkgs/tools/misc/esphome/default.nix4
-rw-r--r--pkgs/tools/misc/fd/default.nix2
-rw-r--r--pkgs/tools/misc/fend/default.nix6
-rw-r--r--pkgs/tools/misc/goreleaser/default.nix6
-rw-r--r--pkgs/tools/misc/infracost/default.nix6
-rw-r--r--pkgs/tools/misc/interactsh/default.nix6
-rw-r--r--pkgs/tools/misc/jfrog-cli/default.nix6
-rw-r--r--pkgs/tools/misc/mongodb-compass/default.nix4
-rw-r--r--pkgs/tools/misc/nux/default.nix23
-rw-r--r--pkgs/tools/misc/onefetch/default.nix6
-rw-r--r--pkgs/tools/misc/opentelemetry-collector/default.nix6
-rw-r--r--pkgs/tools/misc/partition-manager/default.nix7
-rw-r--r--pkgs/tools/misc/pipe-rename/default.nix6
-rw-r--r--pkgs/tools/misc/pistol/default.nix8
-rw-r--r--pkgs/tools/misc/pre-commit/default.nix4
-rw-r--r--pkgs/tools/misc/shell_gpt/default.nix7
-rw-r--r--pkgs/tools/misc/starship/default.nix6
-rw-r--r--pkgs/tools/misc/timer/default.nix12
-rw-r--r--pkgs/tools/misc/tmux-sessionizer/default.nix6
-rw-r--r--pkgs/tools/misc/wakapi/default.nix6
-rw-r--r--pkgs/tools/misc/wakatime/default.nix4
-rw-r--r--pkgs/tools/misc/watchexec/default.nix6
-rw-r--r--pkgs/tools/networking/boundary/default.nix12
-rw-r--r--pkgs/tools/networking/clash-meta/default.nix10
-rw-r--r--pkgs/tools/networking/curl/default.nix13
-rw-r--r--pkgs/tools/networking/dnsproxy/default.nix6
-rw-r--r--pkgs/tools/networking/driftnet/default.nix4
-rw-r--r--pkgs/tools/networking/dsniff/default.nix6
-rw-r--r--pkgs/tools/networking/gobgp/default.nix6
-rw-r--r--pkgs/tools/networking/i2p/default.nix14
-rw-r--r--pkgs/tools/networking/libreswan/default.nix5
-rw-r--r--pkgs/tools/networking/mailutils/default.nix6
-rw-r--r--pkgs/tools/networking/mailutils/don-t-use-descrypt-password-in-the-test-suite.patch59
-rw-r--r--pkgs/tools/networking/netbird/default.nix6
-rw-r--r--pkgs/tools/networking/ntopng/default.nix80
-rw-r--r--pkgs/tools/networking/pritunl-client/default.nix4
-rw-r--r--pkgs/tools/networking/q/default.nix6
-rw-r--r--pkgs/tools/networking/swagger-codegen/default.nix4
-rw-r--r--pkgs/tools/networking/udpreplay/default.nix4
-rw-r--r--pkgs/tools/networking/unbound/default.nix2
-rw-r--r--pkgs/tools/networking/xray/default.nix1
-rw-r--r--pkgs/tools/networking/zrok/default.nix31
-rw-r--r--pkgs/tools/package-management/comma/default.nix6
-rw-r--r--pkgs/tools/package-management/micromamba/default.nix18
-rw-r--r--pkgs/tools/package-management/nfpm/default.nix6
-rw-r--r--pkgs/tools/package-management/nixpkgs-review/default.nix4
-rw-r--r--pkgs/tools/package-management/pkg/default.nix8
-rw-r--r--pkgs/tools/security/age-plugin-yubikey/default.nix35
-rw-r--r--pkgs/tools/security/alterx/default.nix26
-rw-r--r--pkgs/tools/security/browserpass/default.nix15
-rw-r--r--pkgs/tools/security/cariddi/default.nix6
-rw-r--r--pkgs/tools/security/cosign/default.nix6
-rw-r--r--pkgs/tools/security/exploitdb/default.nix4
-rw-r--r--pkgs/tools/security/feroxbuster/default.nix6
-rw-r--r--pkgs/tools/security/fprintd/default.nix7
-rw-r--r--pkgs/tools/security/grype/default.nix6
-rw-r--r--pkgs/tools/security/iaito/default.nix4
-rw-r--r--pkgs/tools/security/kstart/default.nix60
-rw-r--r--pkgs/tools/security/kubernetes-polaris/default.nix6
-rw-r--r--pkgs/tools/security/kubescape/default.nix6
-rw-r--r--pkgs/tools/security/metasploit/Gemfile2
-rw-r--r--pkgs/tools/security/metasploit/Gemfile.lock54
-rw-r--r--pkgs/tools/security/metasploit/default.nix4
-rw-r--r--pkgs/tools/security/metasploit/gemset.nix90
-rw-r--r--pkgs/tools/security/saml2aws/default.nix4
-rw-r--r--pkgs/tools/security/sequoia/default.nix18
-rw-r--r--pkgs/tools/security/tpm2-abrmd/default.nix9
-rw-r--r--pkgs/tools/security/tracee/default.nix33
-rw-r--r--pkgs/tools/security/tracee/use-our-libbpf.patch91
-rw-r--r--pkgs/tools/security/trufflehog/default.nix6
-rw-r--r--pkgs/tools/security/vals/default.nix6
-rw-r--r--pkgs/tools/security/vault/default.nix6
-rw-r--r--pkgs/tools/security/vaultwarden/Cargo.lock237
-rw-r--r--pkgs/tools/security/vaultwarden/default.nix8
-rw-r--r--pkgs/tools/security/zeekscript/default.nix35
-rw-r--r--pkgs/tools/system/erdtree/default.nix6
-rw-r--r--pkgs/tools/system/gdu/default.nix6
-rw-r--r--pkgs/tools/system/gptfdisk/default.nix1
-rw-r--r--pkgs/tools/system/gptfdisk/popt-1-19.patch71
-rw-r--r--pkgs/tools/system/kmon/default.nix6
-rw-r--r--pkgs/tools/system/nats-top/default.nix9
-rw-r--r--pkgs/tools/system/openseachest/default.nix4
-rw-r--r--pkgs/tools/text/ansifilter/default.nix4
-rw-r--r--pkgs/tools/text/d2/default.nix6
-rw-r--r--pkgs/tools/text/goawk/default.nix4
-rw-r--r--pkgs/tools/text/hck/default.nix6
-rw-r--r--pkgs/tools/text/mdbook/default.nix2
-rw-r--r--pkgs/tools/text/nerdfix/default.nix6
-rw-r--r--pkgs/tools/text/peco/default.nix6
-rw-r--r--pkgs/tools/text/ripgrep/default.nix2
-rw-r--r--pkgs/tools/text/ugrep/default.nix4
-rw-r--r--pkgs/tools/typesetting/hayagriva/default.nix26
-rw-r--r--pkgs/tools/typesetting/pulldown-cmark/default.nix25
-rw-r--r--pkgs/tools/typesetting/sile/default.nix4
-rw-r--r--pkgs/tools/typesetting/tex/mftrace/default.nix14
-rw-r--r--pkgs/tools/typesetting/tex/texlive/bin.nix7
-rw-r--r--pkgs/tools/typesetting/tex/texlive/combine.nix24
-rw-r--r--pkgs/tools/typesetting/tex/texlive/default.nix47
-rw-r--r--pkgs/tools/typesetting/typst/Cargo.lock333
-rw-r--r--pkgs/tools/typesetting/typst/default.nix24
-rw-r--r--pkgs/tools/video/rav1e/default.nix2
-rw-r--r--pkgs/tools/virtualization/distrobuilder/default.nix18
-rw-r--r--pkgs/tools/virtualization/google-guest-oslogin/default.nix4
-rw-r--r--pkgs/tools/virtualization/kubevirt/default.nix6
-rw-r--r--pkgs/tools/wayland/wl-clipboard/default.nix2
-rw-r--r--pkgs/tools/wayland/wpaperd/Cargo.lock963
-rw-r--r--pkgs/tools/wayland/wpaperd/default.nix11
155 files changed, 2736 insertions, 1334 deletions
diff --git a/pkgs/tools/admin/awscli2/default.nix b/pkgs/tools/admin/awscli2/default.nix
index d0a7bce8bc028..d41b25953b53a 100644
--- a/pkgs/tools/admin/awscli2/default.nix
+++ b/pkgs/tools/admin/awscli2/default.nix
@@ -9,8 +9,8 @@
 }:
 
 let
-  py = python3.override {
-    packageOverrides = self: super: {
+  py = python3 // {
+    pkgs = python3.pkgs.overrideScope (self: super: {
       ipython = super.ipython.overridePythonAttrs (oldAttrs: rec {
         pname = "ipython";
         version = "8.5.0";
@@ -31,7 +31,7 @@ let
           hash = "sha256-nxzRax6GwpaPJRnX+zHdnWaZFvUVYSwmnRTp7VK1FlA=";
         };
       });
-    };
+    });
   };
 
 in
diff --git a/pkgs/tools/admin/bom/default.nix b/pkgs/tools/admin/bom/default.nix
index f80c153fb4479..4a22212e8c5e0 100644
--- a/pkgs/tools/admin/bom/default.nix
+++ b/pkgs/tools/admin/bom/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "bom";
-  version = "0.4.1";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
     owner = "kubernetes-sigs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-HgBpEIUaeVCMkbu1KtBh0LGZQGFLyj3rF0cYDt8vDRk=";
+    sha256 = "sha256-/a+0kQn2m5JFxhlgs1pUeyWwwqVFrRbYCyUfcLsNGz8=";
     # populate values that require us to use git. By doing this in postFetch we
     # can delete .git afterwards and maintain better reproducibility of the src.
     leaveDotGit = true;
@@ -25,7 +25,7 @@ buildGoModule rec {
     '';
   };
 
-  vendorSha256 = "sha256-m5IK/+mbwGSX8tQUMED8+H52o89QOJk8mhUXumZm+wo=";
+  vendorSha256 = "sha256-+dFHVIE3YFQVgYwEDtUWJAfHSnBZox8qejJtuIMPS2I=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/admin/docker-credential-gcr/default.nix b/pkgs/tools/admin/docker-credential-gcr/default.nix
index 3ea03db31adf3..30736215ff84a 100644
--- a/pkgs/tools/admin/docker-credential-gcr/default.nix
+++ b/pkgs/tools/admin/docker-credential-gcr/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "docker-credential-gcr";
-  version = "2.1.7";
+  version = "2.1.8";
 
   src = fetchFromGitHub {
     owner = "GoogleCloudPlatform";
     repo = "docker-credential-gcr";
     rev = "v${version}";
-    sha256 = "sha256-/+c0bvPdw1FKXw0pfp7v5ArA/PrHU2b7wrt80vAXfCo=";
+    sha256 = "sha256-6f84NRqMx0NX+3g+pCYgRYkGK4DaQmUEau3oMswUmSE=";
   };
 
   patches = [
diff --git a/pkgs/tools/admin/kics/default.nix b/pkgs/tools/admin/kics/default.nix
index 1ba0fdf11df5d..83a38d1e43970 100644
--- a/pkgs/tools/admin/kics/default.nix
+++ b/pkgs/tools/admin/kics/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "kics";
-  version = "1.6.12";
+  version = "1.6.13";
 
   src = fetchFromGitHub {
     owner = "Checkmarx";
     repo = "kics";
     rev = "v${version}";
-    sha256 = "sha256-aVApx9NEMNbM5e0wh23qrSe/cvcXLxzLhpIfA8PZFnA=";
+    sha256 = "sha256-qNfqu/BaI4FTwQPNo4IGSsjWwznSXmGBFYMog8hQAdQ=";
   };
 
-  vendorHash = "sha256-fFqqLbhMWhEoJR7gAwJuQ+hXFVBJPtPldQ3l+btRe68=";
+  vendorHash = "sha256-Hk4QLz31kRnrnV0+0X43Obwy45dwssM1Wc2zoPeKDvI=";
 
   subPackages = [ "cmd/console" ];
 
diff --git a/pkgs/tools/admin/meraki-cli/default.nix b/pkgs/tools/admin/meraki-cli/default.nix
new file mode 100644
index 0000000000000..c446023770bc4
--- /dev/null
+++ b/pkgs/tools/admin/meraki-cli/default.nix
@@ -0,0 +1,58 @@
+{ lib
+, argcomplete
+, jinja2
+, meraki
+, rich
+, fetchPypi
+, buildPythonApplication
+, pytestCheckHook
+, requests-mock
+}:
+
+buildPythonApplication rec {
+  pname = "meraki-cli";
+  version = "1.5.0";
+  format = "setuptools";
+
+  src = fetchPypi {
+    pname = "meraki_cli";
+    inherit version;
+    hash = "sha256-YOyeovqRqt6ZMXgLnIxRvPkcW259K8NIBGdb3PwjkMg=";
+  };
+
+  disabledTests = [
+    # requires files not in PyPI tarball
+    "TestDocVersions"
+    "TestHelps"
+    # requires running "pip install"
+    "TestUpgrade"
+  ];
+
+  propagatedBuildInputs = [
+    argcomplete
+    jinja2
+    meraki
+    rich
+  ];
+
+  nativeBuildInputs = [
+    pytestCheckHook
+  ];
+
+  nativeCheckInputs = [
+    requests-mock
+  ];
+
+  pythonImportsCheck = [
+    "meraki_cli"
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/PackeTsar/meraki-cli";
+    description = "A simple CLI tool to automate and control your Cisco Meraki Dashboard";
+    license = licenses.mit;
+    maintainers = with maintainers; [ dylanmtaylor ];
+    platforms = platforms.unix;
+    mainProgram = "meraki";
+  };
+}
diff --git a/pkgs/tools/admin/pulumi-bin/data.nix b/pkgs/tools/admin/pulumi-bin/data.nix
index b124e250af91c..a06c13293a95e 100644
--- a/pkgs/tools/admin/pulumi-bin/data.nix
+++ b/pkgs/tools/admin/pulumi-bin/data.nix
@@ -1,40 +1,40 @@
 # DO NOT EDIT! This file is generated automatically by update.sh
 { }:
 {
-  version = "3.60.0";
+  version = "3.62.0";
   pulumiPkgs = {
     x86_64-linux = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.60.0-linux-x64.tar.gz";
-        sha256 = "0hvmwwbin8qmsqcj6wp4qd8i8qn47gjc3zbpax0xq0657xikq71s";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.62.0-linux-x64.tar.gz";
+        sha256 = "1xr55za8d1hqs97gg7wjyggv052dg041qjrqn34fkgnlzfd4mzpx";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.0.2-linux-amd64.tar.gz";
-        sha256 = "02zk0141nwrxr7l08a0401k2wvhz4qasdbfx2iykr9k0whv12smi";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.1.0-linux-amd64.tar.gz";
+        sha256 = "07crb0rs2cflq0g2y1gnri9pfazawhbr58lis31qm7qk4d00r1j6";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v4.3.0-linux-amd64.tar.gz";
         sha256 = "0n01d1n5xnxz9z4djcl32lv2szz7jsr3hjdfl7ajnmss0zmc5jwk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.34.0-linux-amd64.tar.gz";
-        sha256 = "07nd8nqarlkgc6y031bmniz3qlrg6q7sgv819a6fzzbmbv56791m";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.35.0-linux-amd64.tar.gz";
+        sha256 = "0zxzjw04lp7ayjh781098fnvpjzmdga9r7gxsyvilb34n3p0jwzd";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v3.2.0-linux-amd64.tar.gz";
-        sha256 = "1dr507c4wlqj0qlnddvbg9v2xbwnrhkrd0qg26p25xxrm0qfcd9y";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v3.2.1-linux-amd64.tar.gz";
+        sha256 = "0bwc506j7azz34smkydlpxr55yznxp3qnp7zw7cd9j3gv6z73r2v";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.18.0-linux-amd64.tar.gz";
         sha256 = "1lz34a178hsix18rpwv9kr8w0f2vyglbf27c23lm57r98860i5rx";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.33.0-linux-amd64.tar.gz";
-        sha256 = "0565nqzjbqfrf0yiy9igh51g4dm6mwjna0kj9dpmbj637w7fa53s";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.35.0-linux-amd64.tar.gz";
+        sha256 = "1sl0987dyzlb7nw5n4cbxzapz8722irk3x8mhqvpi4409zjwsh5v";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.38.0-linux-amd64.tar.gz";
-        sha256 = "12h6pi8aahf97b7cnyksw1gjj6calc45n71bpmv7ac6vbzl9scb2";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.39.0-linux-amd64.tar.gz";
+        sha256 = "09zy6x7si84fqv9nhxd5s2169nwqp8l2rzqk6h9yghx2x7zgg8w1";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.36.0-linux-amd64.tar.gz";
@@ -61,40 +61,40 @@
         sha256 = "0zknpam1li0slymr381825rssnpcd0m2wvakqnaihzxlh4m6arvi";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.1.0-linux-amd64.tar.gz";
-        sha256 = "1yddrhcm3aw02lfm7jmhlw7946zk5w1k05sfd5zwvyyr6pqdk3jc";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.1.2-linux-amd64.tar.gz";
+        sha256 = "02axpxakd6vjsnkgn14vfai8p20ifl38rhwq66499lccpwikc7zv";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-equinix-metal-v3.2.1-linux-amd64.tar.gz";
         sha256 = "0hnardid0kbzy65dmn7vz8ddy5hq78nf2871zz6srf2hfyiv7qa4";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v7.1.0-linux-amd64.tar.gz";
-        sha256 = "05mnm9436kih5dllv6sizcdv165rhnwg9dnl9yjci06rhj2njb73";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v7.2.0-linux-amd64.tar.gz";
+        sha256 = "184y56wh035xjm1bphjcb67cfnpjrniwzq40m1aahhwm1l74x3gx";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.52.0-linux-amd64.tar.gz";
-        sha256 = "028q359ms8whsg41siip6rw0kbg7xf5hwjxnwfzlmx2p42m78pf7";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.53.0-linux-amd64.tar.gz";
+        sha256 = "0rv8rvskm0cqida6hrqg8basc2m8kcx7pazlyxz5r86nj4wascb3";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.6.0-linux-amd64.tar.gz";
-        sha256 = "0j9150spxmviy7hgxyhm1j07gjizv2q4r0v66aywfvn1bkqrwhxc";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.7.0-linux-amd64.tar.gz";
+        sha256 = "0zz88ff478w3lp3branpdkzw2gla29xdz7zjbiaqwj5gpc0njp12";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.9.0-linux-amd64.tar.gz";
         sha256 = "094vc026li9s76y05p778siikq0dg6lgqdnx4cby4qqipfwvnf7m";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.28.0-linux-amd64.tar.gz";
-        sha256 = "0798n2rl43scazjhdmyfx7pi0dfil4gdwl46q5gaqf6jpk4wakdw";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.29.0-linux-amd64.tar.gz";
+        sha256 = "14k9vsi4phsc0wiwp0fzq6jc02bkd78symcn89z4gsli2xrfkdxv";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.10.3-linux-amd64.tar.gz";
         sha256 = "1gd5p5sckjmzbdb94kadaddzbl1j1lw254jhq63mgnh6v2wwij17";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.24.2-linux-amd64.tar.gz";
-        sha256 = "1ic4p5nb13drnfmrb8rzx01rk3w06a6dn84cg7k9alcs1wglfqv1";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.24.3-linux-amd64.tar.gz";
+        sha256 = "0lzc4fj89xp2f1dx3rm44mvaqnby1r181yy145gcmkky1jqi95rd";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.12.0-linux-amd64.tar.gz";
@@ -117,12 +117,12 @@
         sha256 = "0yrzdbcvg16a2v7hc6rq4cmavimkj4hjxd3kfkw8gd2cbi4kcmwf";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.12.0-linux-amd64.tar.gz";
-        sha256 = "1ka4rlycbsays75av3vlilqs4s3wdv8c8sjy9b5wfbv4cs7g18il";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.12.1-linux-amd64.tar.gz";
+        sha256 = "19g6n7afv1rkca9j0388v5ypn458pawzfhlcwgvkn6aj4c5fbawr";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.20.0-linux-amd64.tar.gz";
-        sha256 = "167ldznmkll8ryplqrw8xj5fjxfj3hjmpy3ifm83in9qwjbdrhj7";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.21.0-linux-amd64.tar.gz";
+        sha256 = "1v6hhz59xnnvx24b0p0yhh4a387n0kws6bdilnamld3hrr8c5x1b";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.28.0-linux-amd64.tar.gz";
@@ -153,8 +153,8 @@
         sha256 = "0svlqccq9rb00hz8g5fbpb7r6wf5wbjacab8rvjcb13wvrc8rx54";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v1.2.0-linux-amd64.tar.gz";
-        sha256 = "11yvdszdd35hz3cd7l2vs5m45pf4zv7lvbmrsfr3i00s3d5rmzj0";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v1.3.0-linux-amd64.tar.gz";
+        sha256 = "0c94qzjm1bg3pflc20jnff1aiq3idrxcv3rmq91xa16fiqqzlskz";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-yandex-v0.13.0-linux-amd64.tar.gz";
@@ -163,36 +163,36 @@
     ];
     x86_64-darwin = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.60.0-darwin-x64.tar.gz";
-        sha256 = "0l3qg3np4hs21gkrbxcf8swkwg3pvrsfcid3rx65pw5isxpy0wyv";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.62.0-darwin-x64.tar.gz";
+        sha256 = "07ibkl29wmwln1mh55i088x21p0snbrgr7jk615y6bdbwvb8y1ym";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.0.2-darwin-amd64.tar.gz";
-        sha256 = "05jffzbl2pqczyc9d5lykrqwyx62bnzmxjn9q53pqvdw5faamypw";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.1.0-darwin-amd64.tar.gz";
+        sha256 = "02j4wqzjpi3bxy96gngdyv04c6rff3v11pd073fpcwly5v7hc951";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v4.3.0-darwin-amd64.tar.gz";
         sha256 = "1i07ysdy09ps0l40qz7acj69b6l30q3y4l4cabg3wbrzwxzsa0ki";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.34.0-darwin-amd64.tar.gz";
-        sha256 = "17vqz4i9vvp3lw2qa2ya34pgi6fp2ql35njq3bn6dv1lw65mk7wq";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.35.0-darwin-amd64.tar.gz";
+        sha256 = "1k5lriwzszwil38s8aphfv335ym9wcf7l42hn4wicf5ky42d8c6h";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v3.2.0-darwin-amd64.tar.gz";
-        sha256 = "04hw0pr8p77nxlc6xp0f4irsl3wn60d393389s1m7b4yzknjsald";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v3.2.1-darwin-amd64.tar.gz";
+        sha256 = "1v6q08vkjfdj2jhv83qvmcgb5vr2xx8zrq3wyqa98l81bi6i36vz";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.18.0-darwin-amd64.tar.gz";
         sha256 = "1hlvacv7nwizbijzqfxv996jms2vjak46pnp2mixr05zlmf0p890";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.33.0-darwin-amd64.tar.gz";
-        sha256 = "0vvci7qsms2dkq1wv9x9pdzkcxa3392a30w7z5zk00bnsbhwj0fn";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.35.0-darwin-amd64.tar.gz";
+        sha256 = "0zz5wv4gvjzgr8mhr3zp2mkrmsg56ifajg5qjh1i1i0x5sv99rsn";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.38.0-darwin-amd64.tar.gz";
-        sha256 = "00k4km6iha2m8jsp2p4m9smmcb8cmxwhgmdnmlpy2jwpfzppqq0f";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.39.0-darwin-amd64.tar.gz";
+        sha256 = "002pw2c6bx7jpqm4kvv86ra5hrs0dzj6cn0pa73gzw4b2sdpy33n";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.36.0-darwin-amd64.tar.gz";
@@ -219,40 +219,40 @@
         sha256 = "0vpa47dbqv4bw2i2ayxzh9xlph6y0l1sjrb203f55l312z5y2g22";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.1.0-darwin-amd64.tar.gz";
-        sha256 = "0jgjwf5hbmncl2xkw2mpr0cp8dh5gszlfmgsii6jcnx69pc02f5r";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.1.2-darwin-amd64.tar.gz";
+        sha256 = "0sn4fzvlxpadsbdb56nc7b46sfi967xn3wsp2jd045g0lhkbz7fn";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-equinix-metal-v3.2.1-darwin-amd64.tar.gz";
         sha256 = "1m5lh59h7nck1flzxs9m4n0ag0klk3jmnpf7hc509vffxs89xnjq";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v7.1.0-darwin-amd64.tar.gz";
-        sha256 = "0agdb3yz11vv7jdfj5yawxrm7ibbd1b544lk7ndzfkdmyw1myfwl";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v7.2.0-darwin-amd64.tar.gz";
+        sha256 = "1033h9k8ffyyprd5cvk8l93d1bvhfa91cb866vxz6v1ldgwjrqrf";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.52.0-darwin-amd64.tar.gz";
-        sha256 = "0ngdsp70v05pirmdlzxafxpmd1zbc7dlaqfi2ibw0943kd1gwz53";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.53.0-darwin-amd64.tar.gz";
+        sha256 = "1dz3kxdcbagxspjvhimk8ly93fyih0i145z9870jdw9z4m1cl9f2";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.6.0-darwin-amd64.tar.gz";
-        sha256 = "01wqabdmp82706a1hqd03mbhbxh9vq4aib9csqm9gpabyyfq6zvh";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.7.0-darwin-amd64.tar.gz";
+        sha256 = "0nwblnw3a9ya7841iph7cd0nnwg95wbmjx2w7qc9052c2mawvl9q";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.9.0-darwin-amd64.tar.gz";
         sha256 = "12imy2q8bl255cmc26swa6kflcb08gkh7mnvwxss8nzj0a6rl8vw";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.28.0-darwin-amd64.tar.gz";
-        sha256 = "016n1dknmlhizjh6z923kr68ma7z0xhbxg29kjfay83gn216r4am";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.29.0-darwin-amd64.tar.gz";
+        sha256 = "0np10lxwingxxy4m9j2h7nh9yiwzb79fj10cq8iqjdi1m852nl1f";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.10.3-darwin-amd64.tar.gz";
         sha256 = "09xi66s68h5966hv4vczc4z72awyaqncbkdcg03q3jjawg3lz32y";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.24.2-darwin-amd64.tar.gz";
-        sha256 = "0kp8svvlzj04k7kckz811drnspfkb9405z5m98g4i45vbjyyrpp6";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.24.3-darwin-amd64.tar.gz";
+        sha256 = "0fnwx6qsa5j62hq2rjfw5zdsvhasjnzl9a4lal57j0y033p1hqdb";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.12.0-darwin-amd64.tar.gz";
@@ -275,12 +275,12 @@
         sha256 = "0q9hjfyn4r14fplxx597kjy8g3jpcps4bp7gsyy4ri8fipldjnf3";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.12.0-darwin-amd64.tar.gz";
-        sha256 = "0p55ghgc27rrwki345m13k8jrxkknapgml8b8mbzbgcl7gy1z829";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.12.1-darwin-amd64.tar.gz";
+        sha256 = "1iyybcphd7j6zy29ka1cxd98cbzczdfc70fy0rjg8a07zh6qsrnr";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.20.0-darwin-amd64.tar.gz";
-        sha256 = "108lbp651i38r1z2d3jcrdcpn673p4crdsjapn9snm0vpj8w7v4c";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.21.0-darwin-amd64.tar.gz";
+        sha256 = "18f6abks19vcmagd4kpd9c0lh7vv9g10dswxshpkrfpik6xn9hnp";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.28.0-darwin-amd64.tar.gz";
@@ -311,8 +311,8 @@
         sha256 = "1g7jcwrff8nd1m6fmvfri3nfgby8agcwmq60ascd45mkianwf2i8";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v1.2.0-darwin-amd64.tar.gz";
-        sha256 = "03wn8hm42xn6rnnfinckhfznz4i1mpb6h37kgchpv0s4akapv97r";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v1.3.0-darwin-amd64.tar.gz";
+        sha256 = "0pb4cvmmg403jzgy947lsmnhwy2hy422ar0s9izxwjn9yqay573w";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-yandex-v0.13.0-darwin-amd64.tar.gz";
@@ -321,36 +321,36 @@
     ];
     aarch64-linux = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.60.0-linux-arm64.tar.gz";
-        sha256 = "08h5i6pp4bg11whlacmmkixp5fk03gylw5dg8vva56n2cvqkdgms";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.62.0-linux-arm64.tar.gz";
+        sha256 = "0g1g5dldmcl6rkr0dz9whdzkq8p6b7w83jmk0m0ms9paqv76lvw6";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.0.2-linux-arm64.tar.gz";
-        sha256 = "132ah2lqssdwdfmk97nslc7bfhk5qkqklnasl9anrk61cp095lg7";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.1.0-linux-arm64.tar.gz";
+        sha256 = "1g4zb6hx5541xxshgdiwgryv0rw5kq5z3h0xk7p7h6lb5f14a278";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v4.3.0-linux-arm64.tar.gz";
         sha256 = "1h92d4n9n4ia7y8lnah9fpfkz6yzyxa6dh69kv2cjk17m57x6h0v";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.34.0-linux-arm64.tar.gz";
-        sha256 = "193z4r64ic016m74iy6fzwfldjvjbpknvdc63jdns1ls4wdvg152";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.35.0-linux-arm64.tar.gz";
+        sha256 = "1g6gzcyrskhv6873nhnz4190fylljyishm8qsf3g79zk55bdikj6";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v3.2.0-linux-arm64.tar.gz";
-        sha256 = "0mb5cc0q83mxaap3jhqn3cx8cxmixb7hn3zapg18ak000zvp248q";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v3.2.1-linux-arm64.tar.gz";
+        sha256 = "1g8819p3n6r0ydmnf54qb0iyd8nn3jjhi4cj40fmlkk4biazafdi";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.18.0-linux-arm64.tar.gz";
         sha256 = "0s6ifpr0y0wyik9zdf9ydmky2w0501bcafpswmrar6hvblgbgiib";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.33.0-linux-arm64.tar.gz";
-        sha256 = "1bzadspszwm7gvynmd7zaw6r23f7w3pr7ck4axs8nix6mvdkgc0s";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.35.0-linux-arm64.tar.gz";
+        sha256 = "1y4pfa8ld4pa2205p21k4khzi8yh3bqfq880536hw85lvpgn90gq";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.38.0-linux-arm64.tar.gz";
-        sha256 = "0b3l53b34mz7b4nqr483p1rby9sm7fdjxql3wmj621k5czg48s2n";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.39.0-linux-arm64.tar.gz";
+        sha256 = "084pjdam68z4kasf4nl2bva5q8nwa0ah89rn2xz239by3y0bia4b";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.36.0-linux-arm64.tar.gz";
@@ -377,40 +377,40 @@
         sha256 = "1dq6nbvh1py951s2ips23fh4dg50r67d9g91r94ahagzb75pj5ml";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.1.0-linux-arm64.tar.gz";
-        sha256 = "0vkvkrbsivaklqwg9g0qh5dsjw7c5l8igs0h7p1g301kvndlqsra";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.1.2-linux-arm64.tar.gz";
+        sha256 = "1h9kpbbbfh8q5j9mym8j48nk54sfxyprsi8gdivk4sx27lx81fkh";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-equinix-metal-v3.2.1-linux-arm64.tar.gz";
         sha256 = "111pia2f5xwkwaqs6p90ri29l5b3ivmahsa1bji4fwyyjyp22h4r";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v7.1.0-linux-arm64.tar.gz";
-        sha256 = "1dw3kf7h83lqgd6vpjqlwb9y11aa3wd7kagdc0gzhp7qxd0iwirl";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v7.2.0-linux-arm64.tar.gz";
+        sha256 = "0cwv7cjd96yj0c86dng4k2yybrw1dk68qhrijcszm3vj91ch4nmi";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.52.0-linux-arm64.tar.gz";
-        sha256 = "07qkpnjw5zg0mw50l1pmhxx0j3aqzn5v5cn987564jr4lbc9d2ch";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.53.0-linux-arm64.tar.gz";
+        sha256 = "1lbwp85x9608acz3wx91y68lr73h5bkh1vglji9x7p76rg3nkh2k";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.6.0-linux-arm64.tar.gz";
-        sha256 = "0i815lp4dlzs6kspbmhv7pipci9pv5fzf44bmp4vv8zk372b2rls";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.7.0-linux-arm64.tar.gz";
+        sha256 = "124r9dkpsw87hqj24iwzml9dnm2c5vwqymmxbxa22p6cf82l6p79";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.9.0-linux-arm64.tar.gz";
         sha256 = "0yjy3i95jsdqwmb7qgixlnhzsr6hiv14jcsydjk9j821zw4xrwpr";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.28.0-linux-arm64.tar.gz";
-        sha256 = "1y931wca5hppiwxya68rj6ymhavw7kkpqd67awpls6f7j4y0wwjl";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.29.0-linux-arm64.tar.gz";
+        sha256 = "1nmrz4gfb3wnqyy638y4l4xkr66angjkj5z6n2aj27jhpsgyxy0n";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.10.3-linux-arm64.tar.gz";
         sha256 = "0g4s4myx9qyzzpcnq2h1lm0kajwfww2m4nfvnxhlpnhc51yn2j60";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.24.2-linux-arm64.tar.gz";
-        sha256 = "04kg7b2zk06d7zmipy5y9adsk4yd9bsg3bqb13r4m1lfqh604ivn";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.24.3-linux-arm64.tar.gz";
+        sha256 = "0ww83x60znn33wnh5f4y23sm847xwvfnbn704kbw3wz61p8hx39b";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.12.0-linux-arm64.tar.gz";
@@ -433,12 +433,12 @@
         sha256 = "0hj4a0llq088xcfp85k6nn8ssffj51lvhqp05sg8x3kbg6n0dapy";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.12.0-linux-arm64.tar.gz";
-        sha256 = "13vlh0v6nq7l6rs4pwfzd4v9miqnkxh9hiq8whnaqkxqlayx6h32";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.12.1-linux-arm64.tar.gz";
+        sha256 = "0agw84w6rqyfkdkmmk7sbd13bj5wskl501qfa51syligdmiixf7j";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.20.0-linux-arm64.tar.gz";
-        sha256 = "0yrymzhihv597mbfz88s4xbklsl9jp1g18viabzxc194l323wr2z";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.21.0-linux-arm64.tar.gz";
+        sha256 = "1hjk5rxklbm607ayp6mqb8x810n09prs20cwj9j19kxynabpdqc1";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.28.0-linux-arm64.tar.gz";
@@ -469,8 +469,8 @@
         sha256 = "158iqlvxdc38yn2cdifp94v4jmqbybczm98g3fc8n1ny2wr7akny";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v1.2.0-linux-arm64.tar.gz";
-        sha256 = "0rp3gdng2gnskddwlkkglig3dssdvg9x71pq6ab8mhr4afhza4f8";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v1.3.0-linux-arm64.tar.gz";
+        sha256 = "1f69biz65rz1s1scyyjhjldqrvkbqz2nhm93q62rzdi9sldjbf08";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-yandex-v0.13.0-linux-arm64.tar.gz";
@@ -479,36 +479,36 @@
     ];
     aarch64-darwin = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.60.0-darwin-arm64.tar.gz";
-        sha256 = "1afsivafx7f0r85k6z5fg57hj6cv4msfzpjbv61kycsf3glls21i";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.62.0-darwin-arm64.tar.gz";
+        sha256 = "1y96acwg1axdm045zy87k3bsfngs4lp41sy9srzwvqfwxp2vbsz3";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.0.2-darwin-arm64.tar.gz";
-        sha256 = "1y76k8d4jzd0py9cvw3syql22nxajv20c85pl9m26bjhx2vzqk3i";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.1.0-darwin-arm64.tar.gz";
+        sha256 = "0sj5f6ckfd2y3l680k9r5n67zy5r2nrli7fc5v0zakawwf886wdz";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v4.3.0-darwin-arm64.tar.gz";
         sha256 = "0da555h07fzmrg25sw33744cwh678rb231i0w7arpws2r3qdjjwv";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.34.0-darwin-arm64.tar.gz";
-        sha256 = "1flvldcqqrw39hiyk9vnc98276ayvaij5djnxi4njm1q3rjgg5zp";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.35.0-darwin-arm64.tar.gz";
+        sha256 = "1w7c8dzyzq73chkz7986gn6nqyk7qmfghbx9k2aa0fw803gqqnfs";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v3.2.0-darwin-arm64.tar.gz";
-        sha256 = "0m8kw7wl7jmzx14gk53p5sr5vqrpf00s96ncywgh4l1qdhbwhwa5";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v3.2.1-darwin-arm64.tar.gz";
+        sha256 = "1yv20fxzck3rs577p5avwsbcac8d001w43r08rh7s0q7r10mmq8k";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v2.18.0-darwin-arm64.tar.gz";
         sha256 = "1p1xyhll66vil1hmszamjn6lspiygxdrzfkrmwknh1z9r14nvhcw";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.33.0-darwin-arm64.tar.gz";
-        sha256 = "0mqfsqq2x3cz6k2lybpb49qqq6bdzpfvlxcdav739qxzhddq4g6h";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v5.35.0-darwin-arm64.tar.gz";
+        sha256 = "13wps5ih64rlif7ps0w7cm2q21fng27b6lp0r55v5j8rada43xn5";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.38.0-darwin-arm64.tar.gz";
-        sha256 = "11rhr4p5z7shr74yyrsfagqcshn1r8kzv4vp7iqa7jx521h7s0yn";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.39.0-darwin-arm64.tar.gz";
+        sha256 = "1df0g7kdn518jfgbwm38wsf47ll41lsgmbdq5zcah29whvv5zhyv";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.36.0-darwin-arm64.tar.gz";
@@ -535,40 +535,40 @@
         sha256 = "1h5pahqhgj8kvagv8wgv1sf4cxk8vs8sinw5q0mlnwa5z0z5hgwj";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.1.0-darwin-arm64.tar.gz";
-        sha256 = "1nyh8kzvbknpf95l5m3lngmfvq7ngbh892lbbn5zbfkm9qv6way4";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.1.2-darwin-arm64.tar.gz";
+        sha256 = "1j2vhl06c3zl9gbgqbbkypdzf18rsn087365l4hq7l2y0mhps8kg";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-equinix-metal-v3.2.1-darwin-arm64.tar.gz";
         sha256 = "12bzicm43l7yvh02v5fx3z8v46l9i7a9f677735xi5rjbmd2an4c";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v7.1.0-darwin-arm64.tar.gz";
-        sha256 = "1ccgr4041rsqrxzgsfm85fh4c8ricvprp3l4gqraslmwgsrxx2z5";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v7.2.0-darwin-arm64.tar.gz";
+        sha256 = "0074d9q6zby1rki65byl3rndblcq614jmyda5qbc6dmcjb0paqhx";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.52.0-darwin-arm64.tar.gz";
-        sha256 = "1cmdx19p87ah3rgf1x0hfzpzzr1bwwr5c190cn1xkvs69v4ra4rc";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v6.53.0-darwin-arm64.tar.gz";
+        sha256 = "116v7hmwhpr4bhjr4p7837jmbkrb67phml9rq0sgvhp2v73rp5d4";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.6.0-darwin-arm64.tar.gz";
-        sha256 = "14xbrcvfxqx2w6w03xb0ll2nhmyafgab72c4di602zv1d5jvif3l";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v5.7.0-darwin-arm64.tar.gz";
+        sha256 = "0lgc0kjq4p34rg7lv1p4pm8kngd7y60ks2xqv59xr50q9hlc3mg0";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v4.9.0-darwin-arm64.tar.gz";
         sha256 = "1lkj6zjzhg7s06p75wia14jjsfqs2wza08m4bbcpc4s99b4p6274";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.28.0-darwin-arm64.tar.gz";
-        sha256 = "06qv3bmmcrv9rxv5xain2rk2grfqij6czy2nqay07bjpy2awzh40";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.29.0-darwin-arm64.tar.gz";
+        sha256 = "0pny34hf9g8n748hdfczf4ik6f01xmp7rmp8ix8rqjhlr7nj8spn";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.10.3-darwin-arm64.tar.gz";
         sha256 = "0yi1y22s1mhdrv6kwg94c5yr57jpp456illnaa1kwb3x7rkha9ff";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.24.2-darwin-arm64.tar.gz";
-        sha256 = "1izqf1g2ccsm1wakq7h8nwk7v3gp3q561mp0qkpda90bdkn7abc6";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v3.24.3-darwin-arm64.tar.gz";
+        sha256 = "18pi5bd7n6kq8ddn8djmn80m0n943p4w827ak5ifw04wb0b23a1x";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v3.12.0-darwin-arm64.tar.gz";
@@ -591,12 +591,12 @@
         sha256 = "1fhll8bgamlv4kljngydmnhbc90bz3figg10qy3qa9kgqkrxm041";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.12.0-darwin-arm64.tar.gz";
-        sha256 = "1ig4s67nywazngrc8gwrqacsk8msdw684i1ng6sx7zm05j8bj7rj";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.12.1-darwin-arm64.tar.gz";
+        sha256 = "1avgkbqqxiwnbxkih8j0h435g18893wmkzbdm0zgzq47w57vjxcx";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.20.0-darwin-arm64.tar.gz";
-        sha256 = "05rl4f8q0d3rlrxr9fr1sfj6ypc5xmvgzdmsvxd891z26yamx7ig";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.21.0-darwin-arm64.tar.gz";
+        sha256 = "048j1iv3389a9alyyv95yhj9gv02wf9blx3l1v3k0w6wy4cdrhwd";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.28.0-darwin-arm64.tar.gz";
@@ -627,8 +627,8 @@
         sha256 = "1hy2w6x8mr7bi1pkaz4s8881w1nvl1nhrlqmc371xkpfkaahhj25";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v1.2.0-darwin-arm64.tar.gz";
-        sha256 = "1dlf93xbx643kh3np3v8vg3n82rcsc7k90qf2rcqikyyzqqlr886";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v1.3.0-darwin-arm64.tar.gz";
+        sha256 = "1kwiihjb6k89da3kpxl26ayzjizfm3ngxpb9k0rg05qszvc72dh4";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-yandex-v0.13.0-darwin-arm64.tar.gz";
diff --git a/pkgs/tools/admin/pulumi-bin/default.nix b/pkgs/tools/admin/pulumi-bin/default.nix
index 9f2f7bd6c71ae..7fde0591597ec 100644
--- a/pkgs/tools/admin/pulumi-bin/default.nix
+++ b/pkgs/tools/admin/pulumi-bin/default.nix
@@ -24,6 +24,7 @@ in stdenv.mkDerivation {
   '';
 
   nativeBuildInputs = [ installShellFiles ] ++ lib.optionals stdenv.isLinux [ autoPatchelfHook makeWrapper ];
+  buildInputs = [ stdenv.cc.cc.libgcc or null ];
 
   meta = with lib; {
     homepage = "https://pulumi.io/";
diff --git a/pkgs/tools/admin/qovery-cli/default.nix b/pkgs/tools/admin/qovery-cli/default.nix
index 786a540f6f1a3..9663ce18221d8 100644
--- a/pkgs/tools/admin/qovery-cli/default.nix
+++ b/pkgs/tools/admin/qovery-cli/default.nix
@@ -8,13 +8,13 @@
 
 buildGoModule rec {
   pname = "qovery-cli";
-  version = "0.56.0";
+  version = "0.56.3";
 
   src = fetchFromGitHub {
     owner = "Qovery";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-hbFE2gj4fLA8N8Gh5QvwxfOlPfWTpLlia1lsfQ+RkaU=";
+    hash = "sha256-DJkVIZBuKM5magrhW/+9IdvU5IVEFfF293X6vbFCfmI=";
   };
 
   vendorHash = "sha256-1krHpwjs4kGhPMBF5j3iqUBo8TGKs1h+nDCmDmviPu4=";
diff --git a/pkgs/tools/admin/stripe-cli/default.nix b/pkgs/tools/admin/stripe-cli/default.nix
index 6b8cfa4ca115e..7ec22ff3ff7fa 100644
--- a/pkgs/tools/admin/stripe-cli/default.nix
+++ b/pkgs/tools/admin/stripe-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "stripe-cli";
-  version = "1.13.12";
+  version = "1.14.0";
 
   src = fetchFromGitHub {
     owner = "stripe";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-Zk7Mt2ffhuVT3RB+ZeBRIBybIfEO9AQ4LNVmWU2FutU=";
+    hash = "sha256-c7zfovUZMerUMbjrDPTTMuhzVKSA7VT7VYWy6MhSf88=";
   };
   vendorHash = "sha256-rjYV69BWkqIkgyeauAo4KEfbB7cxnwn3VSjLrMrCu1c=";
 
@@ -29,7 +29,7 @@ buildGoModule rec {
     rm pkg/cmd/resources_test.go
     rm pkg/cmd/root_test.go
 
-    # TODO: no clue why it's broken (1.13.12), remove for now.
+    # TODO: no clue why it's broken (1.14.0), remove for now.
     rm pkg/login/client_login_test.go
     rm pkg/git/editor_test.go
     rm pkg/rpcservice/sample_create_test.go
diff --git a/pkgs/tools/admin/swapspace/default.nix b/pkgs/tools/admin/swapspace/default.nix
index a859de9967070..49737edf8bf14 100644
--- a/pkgs/tools/admin/swapspace/default.nix
+++ b/pkgs/tools/admin/swapspace/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, installShellFiles }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, installShellFiles, util-linux }:
 
 stdenv.mkDerivation rec {
   pname = "swapspace";
@@ -16,8 +16,23 @@ stdenv.mkDerivation rec {
     installShellFiles
   ];
 
+  postPatch = ''
+    substituteInPlace 'swapspace.service' \
+      --replace '/usr/local/sbin/' "$out/bin/"
+    substituteInPlace 'src/support.c' \
+      --replace '/sbin/swapon' '${lib.getBin util-linux}/bin/swapon' \
+      --replace '/sbin/swapoff' '${lib.getBin util-linux}/bin/swapoff'
+    substituteInPlace 'src/swaps.c' \
+      --replace 'mkswap' '${lib.getBin util-linux}/bin/mkswap'
+
+    # Don't create empty directory $out/var/lib/swapspace
+    substituteInPlace 'Makefile.am' \
+      --replace 'install-data-local:' 'do-not-execute:'
+  '';
+
   postInstall = ''
     installManPage doc/swapspace.8
+    install --mode=444 -D 'swapspace.service' "$out/etc/systemd/system/swapspace.service"
   '';
 
   meta = with lib; {
@@ -25,6 +40,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/Tookmund/Swapspace";
     license = licenses.gpl2Only;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ misuzu ];
+    maintainers = with maintainers; [ misuzu Luflosi ];
   };
 }
diff --git a/pkgs/tools/admin/syft/default.nix b/pkgs/tools/admin/syft/default.nix
index eb3d1029e02db..0662079e81a26 100644
--- a/pkgs/tools/admin/syft/default.nix
+++ b/pkgs/tools/admin/syft/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "syft";
-  version = "0.75.0";
+  version = "0.76.1";
 
   src = fetchFromGitHub {
     owner = "anchore";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-/PQza+pSIww3CzYcqEB7Ep8yHns62xh52EoqZodBPPI=";
+    hash = "sha256-PJrGie65XIKJ3HXvBDUFzKgN1EGfjgb+x97eUVwxV8w=";
     # populate values that require us to use git. By doing this in postFetch we
     # can delete .git afterwards and maintain better reproducibility of the src.
     leaveDotGit = true;
@@ -22,7 +22,7 @@ buildGoModule rec {
   };
   # hash mismatch with darwin
   proxyVendor = true;
-  vendorHash = "sha256-le660nqfrqW1a79tlY4/UKqN06zHkUpAVPQhYPqNJLU=";
+  vendorHash = "sha256-HHYKcsJ1NAGM7/CO+XiCvhfTw4mRZicDqf4/D3Tys+A=";
 
   nativeBuildInputs = [ installShellFiles ];
 
@@ -75,6 +75,6 @@ buildGoModule rec {
       vulnerability detection when used with a scanner tool like Grype.
     '';
     license = with licenses; [ asl20 ];
-    maintainers = with maintainers; [ jk ];
+    maintainers = with maintainers; [ jk developer-guy ];
   };
 }
diff --git a/pkgs/tools/audio/mpd-mpris/default.nix b/pkgs/tools/audio/mpd-mpris/default.nix
index 9992f118cad01..d7548bf9abf5a 100644
--- a/pkgs/tools/audio/mpd-mpris/default.nix
+++ b/pkgs/tools/audio/mpd-mpris/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "mpd-mpris";
-  version = "0.4.0";
+  version = "0.4.0-2";
 
   src = fetchFromGitHub {
     owner = "natsukagami";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ryLqGH81Z+5GQ1ROHpCWmCHKSfS8g35b0wCmr8aokWk=";
+    sha256 = "sha256-RGuscED0RvA1+5Aj+Kcnk1h/whU4npJ6hPq8GHWwxPU=";
   };
 
   vendorHash = "sha256-GmdD/4VYp3KeblNGgltFWHdOnK5qsBa2ygIYOBrH+b0=";
diff --git a/pkgs/tools/audio/tts/default.nix b/pkgs/tools/audio/tts/default.nix
index 1c3cc91616c7a..5e8d4240e14db 100644
--- a/pkgs/tools/audio/tts/default.nix
+++ b/pkgs/tools/audio/tts/default.nix
@@ -1,8 +1,8 @@
 { lib
 , python3
 , fetchFromGitHub
-, fetchpatch
 , espeak-ng
+, tts
 }:
 
 let
@@ -115,6 +115,10 @@ python.pkgs.buildPythonApplication rec {
     )
   '';
 
+  # tests get stuck when run in nixpkgs-review, tested in passthru
+  doCheck = false;
+  passthru.tests.pytest = tts.overridePythonAttrs (_: { doCheck = true; });
+
   nativeCheckInputs = with python.pkgs; [
     espeak-ng
     pytestCheckHook
@@ -184,6 +188,8 @@ python.pkgs.buildPythonApplication rec {
     "tests/vocoder_tests/test_multiband_melgan_train.py"
     "tests/vocoder_tests/test_melgan_train.py"
     "tests/vocoder_tests/test_wavernn_train.py"
+    # only a feed forward test, but still takes too long
+    "tests/tts_tests/test_overflow.py"
   ];
 
   passthru = {
diff --git a/pkgs/tools/backup/fabs/default.nix b/pkgs/tools/backup/fabs/default.nix
new file mode 100644
index 0000000000000..47e36b2139fa5
--- /dev/null
+++ b/pkgs/tools/backup/fabs/default.nix
@@ -0,0 +1,66 @@
+{ lib
+, fetchFromGitHub
+, perl
+, python3
+, sqlite
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "fabs";
+  version = "1.1";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "openafs-contrib";
+    repo = "fabs";
+    rev = "v${version}";
+    hash = "sha256-ejAcCwrOWGX0zsMw224f9GTWlozNYC0gU6LdTk0XqH0=";
+  };
+
+  nativeBuildInputs = [
+    perl
+  ];
+
+  propagatedBuildInputs = with python3.pkgs; [
+    alembic
+    python-dateutil
+    pyyaml
+    setuptools
+    sqlalchemy
+  ];
+
+  outputs = [ "out" "man" ];
+
+  preBuild = ''
+    export PREFIX=$out
+  '';
+
+  LOCALSTATEDIR = "/var";
+  LOCKDIR = "/run/lock/fabs";
+
+  preInstall = ''
+    mkdir -p "$out/etc"
+    cp -t "$out/etc" -r etc/fabs
+  '';
+
+  # remove once sqlalchemy backend no longer uses deprecated methods
+  SQLALCHEMY_SILENCE_UBER_WARNING = 1;
+
+  nativeCheckInputs = [
+    python3.pkgs.pytestCheckHook
+    sqlite
+  ];
+
+  meta = with lib; {
+    outputsToInstall = [ "out" "man" ];
+    mainProgram = "fabsys";
+    description = "Flexible AFS Backup System for the OpenAFS distributed file system";
+    homepage = "https://github.com/openafs-contrib/fabs";
+    license = with licenses; [ isc ];
+    maintainers = with maintainers; [ spacefrogg ];
+    badPlatforms = [
+      "x86_64-darwin"
+      "aarch64-darwin"
+    ];
+  };
+}
diff --git a/pkgs/tools/backup/mydumper/default.nix b/pkgs/tools/backup/mydumper/default.nix
index 451ed58d81858..73c3cbc597343 100644
--- a/pkgs/tools/backup/mydumper/default.nix
+++ b/pkgs/tools/backup/mydumper/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mydumper";
-  version = "0.14.1-1";
+  version = "0.14.3-1";
 
   src = fetchFromGitHub {
     owner  = "mydumper";
     repo = "mydumper";
     rev = "refs/tags/v${version}";
-    hash = "sha256-I8COArsIO8+09SNa3DrgoGpvhLj08I8UvT2H9k9mJNQ=";
+    hash = "sha256-qyJGnrBOElQ3s2VoOWfW1luacd33haanmzKidMBgCpc=";
   };
 
   outputs = [ "out" "doc" "man" ];
diff --git a/pkgs/tools/backup/rustic-rs/default.nix b/pkgs/tools/backup/rustic-rs/default.nix
index 5487a26417505..91d25cbb98592 100644
--- a/pkgs/tools/backup/rustic-rs/default.nix
+++ b/pkgs/tools/backup/rustic-rs/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, rustPlatform, stdenv, Security, installShellFiles }:
+{ lib, fetchFromGitHub, rustPlatform, stdenv, Security, installShellFiles, nix-update-script }:
 
 rustPlatform.buildRustPackage rec {
   pname = "rustic-rs";
@@ -7,7 +7,7 @@ rustPlatform.buildRustPackage rec {
   src = fetchFromGitHub {
     owner = "rustic-rs";
     repo = "rustic";
-    rev = "v${version}";
+    rev = "refs/tags/v${version}";
     hash = "sha256-r4hOjX/LKv2wX720FMEztUo9rf2hDBLfcHtENSZNA3U=";
   };
 
@@ -28,6 +28,8 @@ rustPlatform.buildRustPackage rec {
     installShellCompletion rustic.{ba,fi}sh
   '';
 
+  passthru.updateScript = nix-update-script { };
+
   meta = {
     homepage = "https://github.com/rustic-rs/rustic";
     changelog = "https://github.com/rustic-rs/rustic/blob/${src.rev}/changelog/${version}.txt";
diff --git a/pkgs/tools/backup/tsm-client/default.nix b/pkgs/tools/backup/tsm-client/default.nix
index 23a544a6a3e65..80097ade09024 100644
--- a/pkgs/tools/backup/tsm-client/default.nix
+++ b/pkgs/tools/backup/tsm-client/default.nix
@@ -5,8 +5,7 @@
 , fetchurl
 , autoPatchelfHook
 , rpmextract
-, libxcrypt
-, openssl
+, libxcrypt-legacy
 , zlib
 , lvm2  # LVM image backup and restore functions (optional)
 , acl  # EXT2/EXT3/XFS ACL support (optional)
@@ -117,8 +116,7 @@ let
       rpmextract
     ];
     buildInputs = [
-      libxcrypt
-      openssl
+      libxcrypt-legacy
       stdenv.cc.cc
       zlib
     ];
@@ -146,7 +144,8 @@ let
       runHook postInstall
     '';
 
-    # Fix relative symlinks after `/usr` was moved up one level
+    # fix relative symlinks after `/usr` was moved up one level,
+    # fix absolute symlinks pointing to `/opt`
     preFixup = ''
       for link in $out/lib{,64}/* $out/bin/*
       do
@@ -158,6 +157,10 @@ let
         fi
         ln --symbolic --force --no-target-directory "$out/$(cut -b 7- <<< "$target")" "$link"
       done
+      for link in $(find $out -type l -lname '/opt/*')
+      do
+        ln --symbolic --force --no-target-directory "$out$(readlink "$link")" "$link"
+      done
     '';
   };
 
diff --git a/pkgs/tools/compression/xz/default.nix b/pkgs/tools/compression/xz/default.nix
index d49cc314b4a81..41237a953cb88 100644
--- a/pkgs/tools/compression/xz/default.nix
+++ b/pkgs/tools/compression/xz/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "xz";
-  version = "5.4.1";
+  version = "5.4.2";
 
   src = fetchurl {
     url = "https://tukaani.org/xz/xz-${version}.tar.bz2";
-    sha256 = "3Rcqy1OGemgBL5TBc4lAGy8nShqlro+Ey/uLfjg+qNM=";
+    sha256 = "sha256-qkmQnL2QKMRmajX6SXX5piA+2YFU+7giPuQ++c7ul8M=";
   };
 
   strictDeps = true;
diff --git a/pkgs/tools/filesystems/ceph/0000-fix-SPDK-build-env.patch b/pkgs/tools/filesystems/ceph/0000-fix-SPDK-build-env.patch
deleted file mode 100644
index a117408b000fc..0000000000000
--- a/pkgs/tools/filesystems/ceph/0000-fix-SPDK-build-env.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/cmake/modules/BuildSPDK.cmake
-+++ b/cmake/modules/BuildSPDK.cmake
-@@ -35,7 +35,7 @@ macro(build_spdk)
-     # unset $CFLAGS, otherwise it will interfere with how SPDK sets
-     # its include directory.
-     # unset $LDFLAGS, otherwise SPDK will fail to mock some functions.
--    BUILD_COMMAND env -i PATH=$ENV{PATH} CC=${CMAKE_C_COMPILER} ${make_cmd} EXTRA_CFLAGS="${spdk_CFLAGS}"
-+    BUILD_COMMAND env -i PATH=$ENV{PATH} CC=${CMAKE_C_COMPILER} ${make_cmd} EXTRA_CFLAGS="${spdk_CFLAGS}" C_OPT="-mssse3"
-     BUILD_IN_SOURCE 1
-     INSTALL_COMMAND "true")
-   unset(make_cmd)
diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix
index 15e5071f963a4..34befedf18b7a 100644
--- a/pkgs/tools/filesystems/ceph/default.nix
+++ b/pkgs/tools/filesystems/ceph/default.nix
@@ -1,44 +1,82 @@
-{ lib, stdenv, runCommand, fetchurl, fetchpatch
+{ lib
+, stdenv
+, runCommand
+, fetchurl
+, fetchFromGitHub
+
+# Build time
+, cmake
 , ensureNewerSourcesHook
-, cmake, pkg-config
-, which, git
-, boost175, xz
-, libxml2, zlib, lz4
-, openldap, lttng-ust
-, babeltrace, gperf
-, gtest
-, cunit, snappy
+, fmt
+, git
 , makeWrapper
-, leveldb, oath-toolkit
-, libnl, libcap_ng
-, rdkafka
+, pkg-config
+, which
+
+# Tests
 , nixosTests
-, cryptsetup
-, sqlite
-, lua
-, icu
+
+# Runtime dependencies
+, arrow-cpp
+, babeltrace
+, boost179
 , bzip2
+, cryptsetup
+, cimg
+, cunit
 , doxygen
+, gperf
 , graphviz
-, fmt
-, python39
+, gtest
+, icu
+, jsoncpp
+, libcap_ng
+, libnl
+, libxml2
+, lttng-ust
+, lua
+, lz4
+, oath-toolkit
+, openldap
+, python310
+, rdkafka
+, rocksdb
+, snappy
+, sqlite
+, utf8proc
+, zlib
+, zstd
 
 # Optional Dependencies
-, yasm ? null, fcgi ? null, expat ? null
-, curl ? null, fuse ? null
-, libedit ? null, libatomic_ops ? null
+, curl ? null
+, expat ? null
+, fuse ? null
+, libatomic_ops ? null
+, libedit ? null
 , libs3 ? null
+, yasm ? null
 
 # Mallocs
-, jemalloc ? null, gperftools ? null
+, gperftools ? null
+, jemalloc ? null
 
 # Crypto Dependencies
 , cryptopp ? null
-, nss ? null, nspr ? null
+, nspr ? null
+, nss ? null
 
 # Linux Only Dependencies
-, linuxHeaders, util-linux, libuuid, udev, keyutils, rdma-core, rabbitmq-c
-, libaio ? null, libxfs ? null, zfs ? null, liburing ? null
+, linuxHeaders
+, util-linux
+, libuuid
+, udev
+, keyutils
+, rdma-core
+, rabbitmq-c
+, libaio ? null
+, libxfs ? null
+, liburing ? null
+, zfs ? null
 , ...
 }:
 
@@ -49,7 +87,6 @@ let
   shouldUsePkg = pkg: if pkg != null && pkg.meta.available then pkg else null;
 
   optYasm = shouldUsePkg yasm;
-  optFcgi = shouldUsePkg fcgi;
   optExpat = shouldUsePkg expat;
   optCurl = shouldUsePkg curl;
   optFuse = shouldUsePkg fuse;
@@ -68,8 +105,18 @@ let
   optLibxfs = shouldUsePkg libxfs;
   optZfs = shouldUsePkg zfs;
 
-  hasRadosgw = optFcgi != null && optExpat != null && optCurl != null && optLibedit != null;
+  # Downgrade rocksdb, 7.10 breaks ceph
+  rocksdb' = rocksdb.overrideAttrs (oldAttrs: {
+    version = "7.9.2";
+    src = fetchFromGitHub {
+      owner = "facebook";
+      repo = "rocksdb";
+      rev = "refs/tags/v7.9.2";
+      hash = "sha256-5P7IqJ14EZzDkbjaBvbix04ceGGdlWBuVFH/5dpD5VM=";
+    };
+  });
 
+  hasRadosgw = optExpat != null && optCurl != null && optLibedit != null;
 
   # Malloc implementation (can be jemalloc, tcmalloc or null)
   malloc = if optJemalloc != null then optJemalloc else optGperftools;
@@ -92,20 +139,30 @@ let
      platforms = [ "x86_64-linux" "aarch64-linux" ];
    };
 
-  ceph-common = python.pkgs.buildPythonPackage rec{
+  ceph-common = with python.pkgs; buildPythonPackage {
     pname = "ceph-common";
     inherit src version;
 
     sourceRoot = "ceph-${version}/src/python-common";
 
-    nativeCheckInputs = [ python.pkgs.pytest ];
-    propagatedBuildInputs = with python.pkgs; [ pyyaml six ];
+    propagatedBuildInputs = [
+      pyyaml
+    ];
+
+    nativeCheckInputs = [
+      pytestCheckHook
+    ];
+
+    disabledTests = [
+      # requires network access
+      "test_valid_addr"
+    ];
 
     meta = getMeta "Ceph common module for code shared by manager modules";
   };
 
-  # Boost 1.75 is not compatible with Python 3.10
-  python = python39.override {
+  # Watch out for python <> boost compatibility
+  python = python310.override {
     packageOverrides = self: super: {
       sqlalchemy = super.sqlalchemy.overridePythonAttrs (oldAttrs: rec {
         version = "1.4.46";
@@ -125,91 +182,128 @@ let
     };
   };
 
-  boost = boost175.override {
+  boost = boost179.override {
     enablePython = true;
     inherit python;
   };
 
-  ceph-python-env = python.withPackages (ps: [
-    # Check .requires files below https://github.com/ceph/ceph/tree/main/debian for dependencies
-    ps.sphinx
-    ps.flask
-    ps.routes
-    ps.cython
-    ps.setuptools
-    ps.virtualenv
-    # Libraries needed by the python tools
-    ps.mako
+  # TODO: split this off in build and runtime environment
+  ceph-python-env = python.withPackages (ps: with ps; [
     ceph-common
-    ps.cherrypy
-    ps.cmd2
-    ps.colorama
-    ps.python-dateutil
-    ps.jsonpatch
-    ps.pecan
-    ps.prettytable
-    ps.pyopenssl
-    ps.pyjwt
-    ps.webob
-    ps.bcrypt
-    ps.scipy
-    ps.six
-    ps.pyyaml
+
+    # build time
+    cython
+
+    # debian/control
+    bcrypt
+    cherrypy
+    influxdb
+    jinja2
+    kubernetes
+    natsort
+    numpy
+    pecan
+    prettytable
+    pyjwt
+    pyopenssl
+    python-dateutil
+    pyyaml
+    requests
+    routes
+    scikit-learn
+    scipy
+    setuptools
+    sphinx
+    virtualenv
+    werkzeug
+
+    # src/pybind/mgr/requirements-required.txt
+    cryptography
+    jsonpatch
+
+    # src/tools/cephfs/shell/setup.py
+    cmd2
+    colorama
   ]);
   sitePackages = ceph-python-env.python.sitePackages;
 
-  version = "16.2.10";
+  version = "17.2.5";
   src = fetchurl {
     url = "http://download.ceph.com/tarballs/ceph-${version}.tar.gz";
-    sha256 = "sha256-342+nUV3mCX7QJfZSnKEfnQFCJwJmVQeYnefJwW/AtU=";
+    hash = "sha256-NiJpwUeROvh0siSaRoRrDm+C0s61CvRiIrbd7JmRspo=";
   };
 in rec {
   ceph = stdenv.mkDerivation {
     pname = "ceph";
     inherit src version;
 
-    patches = [
-      ./0000-fix-SPDK-build-env.patch
-      # pacific: include/buffer: include <memory>
-      # fixes build with gcc 12
-      # https://github.com/ceph/ceph/pull/47295
-      (fetchpatch {
-        url = "https://github.com/ceph/ceph/pull/47295/commits/df88789a38c053513d3b2a9b7d12a952fc0c9042.patch";
-        hash = "sha256-je65kBfa5hR0ZKo6ZI10XmD5ZUbKj5rxlGxxI9ZJVfo=";
-      })
-      (fetchpatch {
-        url = "https://github.com/ceph/ceph/pull/47295/commits/2abcbe4e47705e6e0fcc7d9d9b75625f563199af.patch";
-        hash = "sha256-8sWQKoZNHuGuhzX/F+3fY4+kjsrwsfoMdVpfVSj2x5w=";
-      })
-      (fetchpatch {
-        url = "https://github.com/ceph/ceph/pull/47295/commits/13dc077cf6c65a3b8c4f13d896847b9964b3fcbb.patch";
-        hash = "sha256-byfiZh9OJrux/y5m3QCPg0LET6q33ZDXmp/CN+yOSQQ=";
-      })
-    ];
-
     nativeBuildInputs = [
       cmake
-      pkg-config which git python.pkgs.wrapPython makeWrapper
+      fmt
+      git
+      makeWrapper
+      pkg-config
+      python
       python.pkgs.python # for the toPythonPath function
+      python.pkgs.wrapPython
+      which
       (ensureNewerSourcesHook { year = "1980"; })
-      python
-      fmt
       # for building docs/man-pages presumably
       doxygen
       graphviz
     ];
 
+    enableParallelBuilding = true;
+
     buildInputs = cryptoLibsMap.${cryptoStr} ++ [
-      boost xz ceph-python-env libxml2 optYasm optLibatomic_ops optLibs3
-      malloc zlib openldap lttng-ust babeltrace gperf gtest cunit
-      snappy lz4 oath-toolkit leveldb libnl libcap_ng rdkafka
-      cryptsetup sqlite lua icu bzip2
+      arrow-cpp
+      babeltrace
+      boost
+      bzip2
+      ceph-python-env
+      cimg
+      cryptsetup
+      cunit
+      gperf
+      gtest
+      jsoncpp
+      icu
+      libcap_ng
+      libnl
+      libxml2
+      lttng-ust
+      lua
+      lz4
+      malloc
+      oath-toolkit
+      openldap
+      optLibatomic_ops
+      optLibs3
+      optYasm
+      rdkafka
+      rocksdb'
+      snappy
+      sqlite
+      utf8proc
+      zlib
+      zstd
     ] ++ lib.optionals stdenv.isLinux [
-      linuxHeaders util-linux libuuid udev keyutils liburing optLibaio optLibxfs optZfs
-      # ceph 14
-      rdma-core rabbitmq-c
+      keyutils
+      liburing
+      libuuid
+      linuxHeaders
+      optLibaio
+      optLibxfs
+      optZfs
+      rabbitmq-c
+      rdma-core
+      udev
+      util-linux
     ] ++ lib.optionals hasRadosgw [
-      optFcgi optExpat optCurl optFuse optLibedit
+      optCurl
+      optExpat
+      optFuse
+      optLibedit
     ];
 
     pythonPath = [ ceph-python-env "${placeholder "out"}/${ceph-python-env.sitePackages}" ];
@@ -226,17 +320,27 @@ in rec {
     '';
 
     cmakeFlags = [
-      "-DWITH_SYSTEM_ROCKSDB=OFF"  # breaks Bluestore
       "-DCMAKE_INSTALL_DATADIR=${placeholder "lib"}/lib"
 
-      "-DWITH_SYSTEM_BOOST=ON"
-      "-DWITH_SYSTEM_GTEST=ON"
       "-DMGR_PYTHON_VERSION=${ceph-python-env.python.pythonVersion}"
-      "-DWITH_SYSTEMD=OFF"
-      "-DWITH_TESTS=OFF"
-      "-DWITH_CEPHFS_SHELL=ON"
+      "-DWITH_CEPHFS_SHELL:BOOL=ON"
+      "-DWITH_SYSTEMD:BOOL=OFF"
+      "-DWITH_TESTS:BOOL=OFF"
+
+      # Use our own libraries, where possible
+      "-DWITH_SYSTEM_ARROW:BOOL=ON"
+      "-DWITH_SYSTEM_BOOST:BOOL=ON"
+      "-DWITH_SYSTEM_CIMG:BOOL=ON"
+      "-DWITH_SYSTEM_JSONCPP:BOOL=ON"
+      "-DWITH_SYSTEM_GTEST:BOOL=ON"
+      "-DWITH_SYSTEM_ROCKSDB:BOOL=ON"
+      "-DWITH_SYSTEM_UTF8PROC:BOOL=ON"
+      "-DWITH_SYSTEM_ZSTD:BOOL=ON"
+
       # TODO breaks with sandbox, tries to download stuff with npm
-      "-DWITH_MGR_DASHBOARD_FRONTEND=OFF"
+      "-DWITH_MGR_DASHBOARD_FRONTEND:BOOL=OFF"
+      # no matching function for call to 'parquet::PageReader::Open(std::shared_ptr<arrow::io::InputStream>&, int64_t, arrow::Compression::type, parquet::MemoryPool*, parquet::CryptoContext*)'
+      "-DWITH_RADOSGW_SELECT_PARQUET:BOOL=OFF"
       # WITH_XFS has been set default ON from Ceph 16, keeping it optional in nixpkgs for now
       ''-DWITH_XFS=${if optLibxfs != null then "ON" else "OFF"}''
     ] ++ lib.optional stdenv.isLinux "-DWITH_SYSTEM_LIBURING=ON";
@@ -259,8 +363,15 @@ in rec {
 
     meta = getMeta "Distributed storage system";
 
-    passthru.version = version;
-    passthru.tests = { inherit (nixosTests) ceph-single-node ceph-multi-node ceph-single-node-bluestore; };
+    passthru = {
+      inherit version;
+      tests = {
+        inherit (nixosTests)
+          ceph-multi-node
+          ceph-single-node
+          ceph-single-node-bluestore;
+      };
+    };
   };
 
   ceph-client = runCommand "ceph-client-${version}" {
diff --git a/pkgs/tools/filesystems/fuse-7z-ng/default.nix b/pkgs/tools/filesystems/fuse-7z-ng/default.nix
index d400891a20547..f5d9b4191e3f5 100644
--- a/pkgs/tools/filesystems/fuse-7z-ng/default.nix
+++ b/pkgs/tools/filesystems/fuse-7z-ng/default.nix
@@ -14,6 +14,10 @@ stdenv.mkDerivation rec {
     # Drop unused pthread library. pthread_yield()
     # fails the configure.
     ./no-pthread.patch
+    # Zero-initialize unset fields of `struct fuse_operations` so that
+    # garbage values don't cause segfault.
+    # <https://github.com/kedazo/fuse-7z-ng/pull/8>
+    ./zero-init-fuse-operations.patch
   ];
 
   nativeBuildInputs = [ pkg-config makeWrapper autoconf automake ];
diff --git a/pkgs/tools/filesystems/fuse-7z-ng/zero-init-fuse-operations.patch b/pkgs/tools/filesystems/fuse-7z-ng/zero-init-fuse-operations.patch
new file mode 100644
index 0000000000000..35acdaa04542e
--- /dev/null
+++ b/pkgs/tools/filesystems/fuse-7z-ng/zero-init-fuse-operations.patch
@@ -0,0 +1,13 @@
+Zero-initialize unset fields of `struct fuse_operations`.
+<https://github.com/kedazo/fuse-7z-ng/pull/8>
+--- a/src/main.cpp
++++ b/src/main.cpp
+@@ -195,7 +195,7 @@ main (int argc, char **argv)
+         mkdir(param.mountpoint, 0750);
+     }
+ 
+-    struct fuse_operations fuse7z_oper;
++    struct fuse_operations fuse7z_oper = {0};
+     fuse7z_oper.init = fuse7z_init;
+     fuse7z_oper.destroy = fuse7z_destroy;
+     fuse7z_oper.readdir = fuse7z_readdir;
diff --git a/pkgs/tools/filesystems/gcsfuse/default.nix b/pkgs/tools/filesystems/gcsfuse/default.nix
index 02fa3de810b2f..d1ee2e0588d95 100644
--- a/pkgs/tools/filesystems/gcsfuse/default.nix
+++ b/pkgs/tools/filesystems/gcsfuse/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "gcsfuse";
-  version = "0.41.12";
+  version = "0.42.3";
 
   src = fetchFromGitHub {
     owner = "googlecloudplatform";
     repo = "gcsfuse";
     rev = "v${version}";
-    hash = "sha256-s28vtcNodc5IL8SnZLTgSQBTPUf0FiIAv3TxZXMDuYE=";
+    hash = "sha256-011QEWEnQBskn7xvdP6mbWeBIyUy94sF2T44gobiICg=";
   };
 
   vendorHash = null;
diff --git a/pkgs/tools/filesystems/glusterfs/default.nix b/pkgs/tools/filesystems/glusterfs/default.nix
index a1d09df7e6093..ccaabf5f2841e 100644
--- a/pkgs/tools/filesystems/glusterfs/default.nix
+++ b/pkgs/tools/filesystems/glusterfs/default.nix
@@ -55,13 +55,13 @@ let
   ];
 in stdenv.mkDerivation rec {
   pname = "glusterfs";
-  version = "10.1";
+  version = "10.3";
 
   src = fetchFromGitHub {
     owner = "gluster";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-vVFC2kQNneaOwrezPehOX32dpJb88ZhGHBApEXc9MOg=";
+    sha256 = "sha256-2+zdEbvXwfjAyeWpy0TAWRE0kvqSUqebmRyuhdfzYd0=";
   };
   inherit buildInputs propagatedBuildInputs;
 
diff --git a/pkgs/tools/filesystems/glusterfs/ssl_cert_path.patch b/pkgs/tools/filesystems/glusterfs/ssl_cert_path.patch
index 5964e14787e72..71b632e12eaec 100644
--- a/pkgs/tools/filesystems/glusterfs/ssl_cert_path.patch
+++ b/pkgs/tools/filesystems/glusterfs/ssl_cert_path.patch
@@ -7,7 +7,7 @@ index fb8db11e9e..4c40683057 100644
  dnl Find out OpenSSL trusted certificates path
  AC_MSG_CHECKING([for OpenSSL trusted certificates path])
 -SSL_CERT_PATH=$(openssl version -d | sed -e 's|OPENSSLDIR: "\(.*\)".*|\1|')
--if test -d $SSL_CERT_PATH 1>/dev/null 2>&1; then
+-if test -d "${SSL_CERT_PATH}" 1>/dev/null 2>&1; then
 -   AC_MSG_RESULT([$SSL_CERT_PATH])
 -   AC_DEFINE_UNQUOTED(SSL_CERT_PATH, ["$SSL_CERT_PATH"], [Path to OpenSSL trusted certificates.])
 -   AC_SUBST(SSL_CERT_PATH)
diff --git a/pkgs/tools/filesystems/juicefs/default.nix b/pkgs/tools/filesystems/juicefs/default.nix
index 193bc25fbc918..3ffa678e39951 100644
--- a/pkgs/tools/filesystems/juicefs/default.nix
+++ b/pkgs/tools/filesystems/juicefs/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "juicefs";
-  version = "1.0.3";
+  version = "1.0.4";
 
   src = fetchFromGitHub {
     owner = "juicedata";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-zGVOodjNPH/vCIBEjXo3MTg8McybakMv7tg0Y9ahasU=";
+    sha256 = "sha256-Bez9wwAPDyYYECDwW9CB/ACTGUJl6PW3YiipIGY0Zbo=";
   };
 
-  vendorSha256 = "sha256-YzFGqn9r06TEMiKuuUbUkoacFpsAOPopX9MNB4mlTIM=";
+  vendorHash = "sha256-dsKNFIXcSeYUyh1TO1h1Ze3jS97pdhn2eU9hHjTARCo=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/tools/filesystems/mergerfs/default.nix b/pkgs/tools/filesystems/mergerfs/default.nix
index de23fbb5ab801..171bb3f480903 100644
--- a/pkgs/tools/filesystems/mergerfs/default.nix
+++ b/pkgs/tools/filesystems/mergerfs/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mergerfs";
-  version = "2.34.1";
+  version = "2.35.1";
 
   src = fetchFromGitHub {
     owner = "trapexit";
     repo = pname;
     rev = version;
-    sha256 = "sha256-67LkMbs3JGpkwMHGWJf03yy8aGfSVb64TF4DPLlLMgY=";
+    sha256 = "sha256-mUnjWMxeZJ9wIpJJDqQIUk2x7oifZ/b2HZlPtQ77q8U=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/filesystems/mtools/default.nix b/pkgs/tools/filesystems/mtools/default.nix
index d839b51d4e42b..9045699e2e327 100644
--- a/pkgs/tools/filesystems/mtools/default.nix
+++ b/pkgs/tools/filesystems/mtools/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mtools";
-  version = "4.0.42";
+  version = "4.0.43";
 
   src = fetchurl {
     url = "mirror://gnu/mtools/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-ZL/f3k2Cr2si88HHLD4jHLthj0wjCcxG9U0W1VAszxU=";
+    sha256 = "sha256-VB4XlmXcTicrlgLyB0JDWRoVfaicxHBk2oxYKdvSszk=";
   };
 
   patches = lib.optional stdenv.isDarwin ./UNUSED-darwin.patch;
@@ -18,6 +18,10 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
+  passthru = {
+    updateScript = ./update.sh;
+  };
+
   meta = with lib; {
     homepage = "https://www.gnu.org/software/mtools/";
     description = "Utilities to access MS-DOS disks";
diff --git a/pkgs/tools/filesystems/mtools/update.sh b/pkgs/tools/filesystems/mtools/update.sh
new file mode 100755
index 0000000000000..8fd6505490faf
--- /dev/null
+++ b/pkgs/tools/filesystems/mtools/update.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl common-updater-scripts
+set -eu -o pipefail
+
+version="$(curl -s --list-only ftp://ftp.gnu.org/gnu/mtools/ | sed 's/^.*-\([0-9]\+\.[0-9]\+\.[0-9]\+\).*$/\1/' | sort -n | uniq | tail -n1)"
+update-source-version mtools "$version"
diff --git a/pkgs/tools/filesystems/stratis-cli/default.nix b/pkgs/tools/filesystems/stratis-cli/default.nix
index cf60c13f0fe29..89f1eb81822f3 100644
--- a/pkgs/tools/filesystems/stratis-cli/default.nix
+++ b/pkgs/tools/filesystems/stratis-cli/default.nix
@@ -6,13 +6,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "stratis-cli";
-  version = "3.5.0";
+  version = "3.5.1";
 
   src = fetchFromGitHub {
     owner = "stratis-storage";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-IfvI8DVjm68SewHtQbhGGU1oku4eZnF7cRyeVPB/Ctk=";
+    hash = "sha256-aDWHXKmlKKJo+ckW1vA0bm4q5z2g/Zx5frVDR6Kwgjw=";
   };
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/pkgs/tools/games/gamemode/default.nix b/pkgs/tools/games/gamemode/default.nix
index 230ccb2ed5f26..25acf8cebb1eb 100644
--- a/pkgs/tools/games/gamemode/default.nix
+++ b/pkgs/tools/games/gamemode/default.nix
@@ -34,6 +34,12 @@ stdenv.mkDerivation rec {
     ./preload-nix-workaround.patch
     # Do not install systemd sysusers configuration
     ./no-install-systemd-sysusers.patch
+
+    # fix build with glibc >=2.36 (declaration of pidfd_open)
+    (fetchpatch {
+      url = "https://github.com/FeralInteractive/gamemode/commit/4934191b1928ef695c3e8af21e75781f8591745f.patch";
+      sha256 = "sha256-pWf2NGbd3gEJFwVP/EIJRbTD29V7keTQHy388enktsY=";
+    })
   ];
 
   postPatch = ''
diff --git a/pkgs/tools/graphics/pfstools/default.nix b/pkgs/tools/graphics/pfstools/default.nix
index f02a056c35219..99debde345feb 100644
--- a/pkgs/tools/graphics/pfstools/default.nix
+++ b/pkgs/tools/graphics/pfstools/default.nix
@@ -18,9 +18,11 @@ mkDerivation rec {
   cmakeFlags = [ "-DWITH_MATLAB=false" ];
 
   preConfigure = ''
+    sed -e 's|#include( ''${PROJECT_SRC_DIR}/cmake/FindNETPBM.cmake )|include( ''${PROJECT_SOURCE_DIR}/cmake/FindNETPBM.cmake )|' -i CMakeLists.txt
+
     rm cmake/FindNETPBM.cmake
-    echo "SET(NETPBM_LIBRARY `find ${lib.getLib netpbm} -name "*.${stdenv.hostPlatform.extensions.sharedLibrary}*" -type f`)" >> cmake/FindNETPBM.cmake
-    echo "SET(NETPBM_LIBRARIES `find ${lib.getLib netpbm} -name "*.${stdenv.hostPlatform.extensions.sharedLibrary}*" -type f`)" >> cmake/FindNETPBM.cmake
+    echo "SET(NETPBM_LIBRARY `find ${lib.getLib netpbm} -name "*${stdenv.hostPlatform.extensions.sharedLibrary}*" -type f`)" >> cmake/FindNETPBM.cmake
+    echo "SET(NETPBM_LIBRARIES `find ${lib.getLib netpbm} -name "*${stdenv.hostPlatform.extensions.sharedLibrary}*" -type f`)" >> cmake/FindNETPBM.cmake
     echo "SET(NETPBM_INCLUDE_DIR ${lib.getDev netpbm}/include/netpbm)" >> cmake/FindNETPBM.cmake
     echo "INCLUDE(FindPackageHandleStandardArgs)" >> cmake/FindNETPBM.cmake
     echo "FIND_PACKAGE_HANDLE_STANDARD_ARGS(NETPBM DEFAULT_MSG NETPBM_LIBRARY NETPBM_INCLUDE_DIR)" >> cmake/FindNETPBM.cmake
diff --git a/pkgs/tools/graphics/resvg/default.nix b/pkgs/tools/graphics/resvg/default.nix
index d96004ae54522..838d22d774017 100644
--- a/pkgs/tools/graphics/resvg/default.nix
+++ b/pkgs/tools/graphics/resvg/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "resvg";
-  version = "0.30.0";
+  version = "0.31.0";
 
   src = fetchFromGitHub {
     owner = "RazrFalcon";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-uZa0R5Po9d/36z4t3BwqPInfBlRN/ZzwhPYtnaz+pvc=";
+    hash = "sha256-CVMY/bubX+LJs3S1GmL6oPg3A/eEHwtrDpNCObE3YV0=";
   };
 
-  cargoHash = "sha256-QtoPWtLgbRpJuvtfUJ4CiSjb0F+4ojVqK3IZePsF8Rk=";
+  cargoHash = "sha256-nM7WhzWALYwRkH4lotYT1PGZeDcBBSa8CtdyBWHSu8Y=";
 
   meta = with lib; {
     description = "An SVG rendering library";
diff --git a/pkgs/tools/graphics/spirv-cross/default.nix b/pkgs/tools/graphics/spirv-cross/default.nix
index b66c2d0a7590f..c4dcd26849120 100644
--- a/pkgs/tools/graphics/spirv-cross/default.nix
+++ b/pkgs/tools/graphics/spirv-cross/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "spirv-cross";
-  version = "1.3.239.0";
+  version = "1.3.243.0";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "SPIRV-Cross";
     rev = "sdk-${finalAttrs.version}";
-    hash = "sha256-Awtsz4iMuS3JuvaYHRxjo56EnnZPjo9YGfeYAi7lmJY=";
+    hash = "sha256-snxbTI4q0YQq8T5NQD3kcsN59iJnhlLiu1Fvr+fCDeQ=";
   };
 
   nativeBuildInputs = [ cmake python3 ];
diff --git a/pkgs/tools/graphics/vulkan-extension-layer/default.nix b/pkgs/tools/graphics/vulkan-extension-layer/default.nix
index 63d763a893daf..37de2d20aafc2 100644
--- a/pkgs/tools/graphics/vulkan-extension-layer/default.nix
+++ b/pkgs/tools/graphics/vulkan-extension-layer/default.nix
@@ -2,15 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "vulkan-extension-layer";
-  version = "1.3.239.0";
+  version = "1.3.243.0";
 
-  src = (assert version == vulkan-headers.version;
-    fetchFromGitHub {
-      owner = "KhronosGroup";
-      repo = "Vulkan-ExtensionLayer";
-      rev = "sdk-${version}";
-      hash = "sha256-0t9HGyiYk3twYQLFCcWsrPiXY1dqjdCadjP4yMLoFwA=";
-    });
+  src = fetchFromGitHub {
+    owner = "KhronosGroup";
+    repo = "Vulkan-ExtensionLayer";
+    rev = "sdk-${version}";
+    hash = "sha256-hxlfSnH4M3ui5nW0Ll5rhto0DnJIHW0tJzS+p4KV0R4=";
+  };
 
   nativeBuildInputs = [ cmake jq ];
 
@@ -41,5 +40,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     license = licenses.asl20;
     maintainers = with maintainers; [ expipiplus1 ];
+    broken = (version != vulkan-headers.version);
   };
 }
diff --git a/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix b/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix
index ec1862df9cd77..0150f4e5c6fbc 100644
--- a/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix
+++ b/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix
@@ -25,16 +25,15 @@
 stdenv.mkDerivation rec {
   pname = "vulkan-tools-lunarg";
   # The version must match that in vulkan-headers
-  version = "1.3.239.0";
+  version = "1.3.243.0";
 
-  src = (assert version == vulkan-headers.version;
-    fetchFromGitHub {
-      owner = "LunarG";
-      repo = "VulkanTools";
-      rev = "sdk-${version}";
-      hash = "sha256-zgkuTy9ccg8D/riA1CM/PnbXW1R0jWEINtcEVilETwk=";
-      fetchSubmodules = true;
-    });
+  src = fetchFromGitHub {
+   owner = "LunarG";
+   repo = "VulkanTools";
+   rev = "sdk-${version}";
+   hash = "sha256-mvBP6wD1Z0VNLZ0mC4bA3i2IaBDtDr7K6XjHz4S3UA4=";
+   fetchSubmodules = true;
+ };
 
   nativeBuildInputs = [ cmake python3 jq which pkg-config ];
 
@@ -103,5 +102,6 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     license = licenses.asl20;
     maintainers = [ maintainers.expipiplus1 ];
+    broken = (version != vulkan-headers.version);
   };
 }
diff --git a/pkgs/tools/graphics/vulkan-tools/default.nix b/pkgs/tools/graphics/vulkan-tools/default.nix
index da84038fd0fdb..47a17158653f1 100644
--- a/pkgs/tools/graphics/vulkan-tools/default.nix
+++ b/pkgs/tools/graphics/vulkan-tools/default.nix
@@ -21,18 +21,14 @@
 
 stdenv.mkDerivation rec {
   pname = "vulkan-tools";
-  version = "1.3.239.0";
+  version = "1.3.243.0";
 
-  # It's not strictly necessary to have matching versions here, however
-  # since we're using the SDK version we may as well be consistent with
-  # the rest of nixpkgs.
-  src = (assert (version) == vulkan-headers.version;
-    fetchFromGitHub {
-      owner = "KhronosGroup";
-      repo = "Vulkan-Tools";
-      rev = "sdk-${version}";
-      hash = "sha256-DQGwxTZzS0eATKodMpeJaQdXADvomiqPOspDYoPFZjI=";
-    });
+  src = fetchFromGitHub {
+    owner = "KhronosGroup";
+    repo = "Vulkan-Tools";
+    rev = "sdk-${version}";
+    hash = "sha256-8XJON+iBEPRtuQWf1bPXyOJHRkuRLnLXgTIjk7gYQwE=";
+  };
 
   nativeBuildInputs = [
     cmake
@@ -107,5 +103,6 @@ stdenv.mkDerivation rec {
     platforms   = platforms.unix;
     license     = licenses.asl20;
     maintainers = [ maintainers.ralith ];
+    broken = (version != vulkan-headers.version);
   };
 }
diff --git a/pkgs/tools/inputmethods/fcitx5/fcitx5-mozc.nix b/pkgs/tools/inputmethods/fcitx5/fcitx5-mozc.nix
index ac85bb2c40e90..92a0474ef199f 100644
--- a/pkgs/tools/inputmethods/fcitx5/fcitx5-mozc.nix
+++ b/pkgs/tools/inputmethods/fcitx5/fcitx5-mozc.nix
@@ -84,13 +84,19 @@ in clangStdenv.mkDerivation rec {
   '';
 
   buildPhase = ''
+    runHook preBuild
+
     python build_mozc.py build -c Release \
       server/server.gyp:mozc_server \
       gui/gui.gyp:mozc_tool \
       unix/fcitx5/fcitx5.gyp:fcitx5-mozc
+
+    runHook postBuild
   '';
 
   installPhase = ''
+    runHook preInstall
+
     export PREFIX=$out
     export _bldtype=Release
     ../scripts/install_server
@@ -101,6 +107,12 @@ in clangStdenv.mkDerivation rec {
     install -d $out/share/fcitx5/inputmethod
     install -d $out/lib/fcitx5
     ../scripts/install_fcitx5
+
+    runHook postInstall
+  '';
+
+  preFixup = ''
+    wrapQtApp $out/lib/mozc/mozc_tool
   '';
 
   meta = with lib; {
diff --git a/pkgs/tools/inputmethods/uim/default.nix b/pkgs/tools/inputmethods/uim/default.nix
index cbc978821a03f..4e52e60568679 100644
--- a/pkgs/tools/inputmethods/uim/default.nix
+++ b/pkgs/tools/inputmethods/uim/default.nix
@@ -152,7 +152,6 @@ stdenv.mkDerivation rec {
     description = "A multilingual input method framework";
     license     = licenses.bsd3;
     platforms   = platforms.unix;
-    broken      = stdenv.hostPlatform.isAarch64; # fails to build libgcroots (not supported on aarch64)
     maintainers = with maintainers; [ ericsagnes oxij ];
   };
 }
diff --git a/pkgs/tools/misc/aichat/default.nix b/pkgs/tools/misc/aichat/default.nix
new file mode 100644
index 0000000000000..945abf1f23b94
--- /dev/null
+++ b/pkgs/tools/misc/aichat/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, stdenv
+, darwin
+, rustPlatform
+, fetchFromGitHub
+, pkg-config
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "aichat";
+  version = "0.8.0";
+
+  src = fetchFromGitHub {
+    owner = "sigoden";
+    repo = "aichat";
+    rev = "v${version}";
+    hash = "sha256-E/QslRDeifFHlHUELv9rYHjfCAB1yXXiXlWOyPNkfps=";
+  };
+
+  cargoHash = "sha256-7TTHBeZ68G6k5eHBL1zDGsYiTyx27fBbN7Rl9AiZTng=";
+
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.CoreFoundation
+    darwin.apple_sdk.frameworks.Security
+  ];
+
+  meta = with lib; {
+    description = "Chat with gpt-3.5/chatgpt in terminal.";
+    homepage = "https://github.com/sigoden/aichat";
+    license = licenses.mit;
+    maintainers = with maintainers; [ mwdomino ];
+  };
+}
diff --git a/pkgs/tools/misc/cc2538-bsl/default.nix b/pkgs/tools/misc/cc2538-bsl/default.nix
new file mode 100644
index 0000000000000..77280835fe06a
--- /dev/null
+++ b/pkgs/tools/misc/cc2538-bsl/default.nix
@@ -0,0 +1,36 @@
+{ lib, fetchFromGitHub, python3Packages }:
+
+python3Packages.buildPythonPackage rec {
+  pname = "cc2538-bsl";
+  version = "unstable-2022-08-03";
+
+  src = fetchFromGitHub rec {
+    owner = "JelmerT";
+    repo = pname;
+    rev = "538ea0deb99530e28fdf1b454e9c9d79d85a3970";
+    hash = "sha256-fPY12kValxbJORi9xNyxzwkGpD9F9u3M1+aa9IlSiaE=";
+  };
+
+  nativeBuildInputs = [ python3Packages.setuptools-scm ];
+
+  propagatedBuildInputs = with python3Packages; [
+    intelhex
+    pyserial
+    python-magic
+  ];
+
+  env.SETUPTOOLS_SCM_PRETEND_VERSION = "0.1.dev0+g${lib.substring 0 7 src.rev}";
+
+  postInstall = ''
+    # Remove .py from binary
+    mv $out/bin/cc2538-bsl.py $out/bin/cc2538-bsl
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/JelmerT/cc2538-bsl";
+    description = "Flash TI SimpleLink chips (CC2538, CC13xx, CC26xx) over serial";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ lorenz ];
+  };
+}
+
diff --git a/pkgs/tools/misc/chatgpt-cli/default.nix b/pkgs/tools/misc/chatgpt-cli/default.nix
index fcfea81e7f2d6..a81be70cb1f1e 100644
--- a/pkgs/tools/misc/chatgpt-cli/default.nix
+++ b/pkgs/tools/misc/chatgpt-cli/default.nix
@@ -5,16 +5,16 @@
 }:
 buildGoModule rec {
   pname = "chatgpt";
-  version = "1.0.2";
+  version = "1.1";
 
   src = fetchFromGitHub {
     owner = "j178";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-7PQ390KX/+Yu730pluO+jL1NNZ1yB1CO+YTj41/OByo=";
+    hash = "sha256-HhpllMpr9VvtpaFMDPPQpJLyyJhKI4uWQswsFLrMhos=";
   };
 
-  vendorHash = "sha256-MSqCFcBY6z16neinGsxH+YFA7R2p+4kwolgqGxjQVq4=";
+  vendorHash = "sha256-QsK2ghfmhqSDCPiQz0/bdGJvxijDGSi4kAG6f8hJyrg=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/tools/misc/clipboard-jh/default.nix b/pkgs/tools/misc/clipboard-jh/default.nix
index a22043ae84fa3..177c0b7a67f3f 100644
--- a/pkgs/tools/misc/clipboard-jh/default.nix
+++ b/pkgs/tools/misc/clipboard-jh/default.nix
@@ -7,19 +7,24 @@
 , wayland-protocols
 , wayland
 , xorg
+, darwin
 }:
 
 stdenv.mkDerivation rec {
   pname = "clipboard-jh";
-  version = "0.3.2";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "Slackadays";
     repo = "clipboard";
     rev = version;
-    sha256 = "sha256-xdogl2WDuQXeLFuBY1u7PSpaoVI9HKScOdxHZ3+whIg=";
+    hash = "sha256-o3yCWAy7hlFKAFW3tVRG+hL0SRWlNY4hvnhUoDK8GkI=";
   };
 
+  postPatch = ''
+    sed -i "/CMAKE_OSX_ARCHITECTURES/d" CMakeLists.txt
+  '';
+
   nativeBuildInputs = [
     cmake
     pkg-config
@@ -30,6 +35,8 @@ stdenv.mkDerivation rec {
     wayland-protocols
     wayland
     xorg.libX11
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.AppKit
   ];
 
   cmakeFlags = [
diff --git a/pkgs/tools/misc/depotdownloader/default.nix b/pkgs/tools/misc/depotdownloader/default.nix
index 1f054fb063a29..ecbe3cc67d2a1 100644
--- a/pkgs/tools/misc/depotdownloader/default.nix
+++ b/pkgs/tools/misc/depotdownloader/default.nix
@@ -25,7 +25,7 @@ buildDotnetModule rec {
     changelog = "https://github.com/SteamRE/DepotDownloader/releases/tag/DepotDownloader_${version}";
     license = licenses.gpl2Only;
     maintainers = [ maintainers.babbaj ];
-    platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ];
+    platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
     mainProgram = "DepotDownloader";
   };
 }
diff --git a/pkgs/tools/misc/desktop-file-utils/default.nix b/pkgs/tools/misc/desktop-file-utils/default.nix
index 597eced414f6d..218eed5eb8bba 100644
--- a/pkgs/tools/misc/desktop-file-utils/default.nix
+++ b/pkgs/tools/misc/desktop-file-utils/default.nix
@@ -1,4 +1,13 @@
-{ lib, stdenv, fetchurl, pkg-config, meson, ninja, glib, libintl }:
+{ stdenv
+, lib
+, fetchurl
+, fetchpatch
+, pkg-config
+, meson
+, ninja
+, glib
+, libintl
+}:
 
 stdenv.mkDerivation rec {
   pname = "desktop-file-utils";
@@ -9,8 +18,29 @@ stdenv.mkDerivation rec {
     sha256 = "02bkfi6fyk4c0gh2avd897882ww5zl7qg7bzzf28qb57kvkvsvdj";
   };
 
-  nativeBuildInputs = [ pkg-config meson ninja ];
-  buildInputs = [ glib libintl ];
+  patches = [
+    # Support Desktop Entry Specification v1.5.
+    # https://gitlab.freedesktop.org/xdg/desktop-file-utils/-/merge_requests/11
+    (fetchpatch {
+      url = "https://gitlab.freedesktop.org/xdg/desktop-file-utils/-/commit/425177a28b6215e0745f95100160a08e810fd47c.patch";
+      sha256 = "zu9EqTnQQGi5HqKh431JqigtJi+b16RuXSWQYbuuyxA=";
+    })
+    (fetchpatch {
+      url = "https://gitlab.freedesktop.org/xdg/desktop-file-utils/-/commit/56d220dd679c7c3a8f995a41a27a7d6f3df49dea.patch";
+      sha256 = "p4kamGIm2QBHfIbvDnx+qu5Gi7OU3Z0nQKr39SsEKqk=";
+    })
+  ];
+
+  nativeBuildInputs = [
+    pkg-config
+    meson
+    ninja
+  ];
+
+  buildInputs = [
+    glib
+    libintl
+  ];
 
   postPatch = ''
     substituteInPlace src/install.c \
@@ -23,6 +53,6 @@ stdenv.mkDerivation rec {
     homepage = "http://www.freedesktop.org/wiki/Software/desktop-file-utils";
     description = "Command line utilities for working with .desktop files";
     platforms = platforms.linux ++ platforms.darwin;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/misc/dt-shell-color-scripts/default.nix b/pkgs/tools/misc/dt-shell-color-scripts/default.nix
deleted file mode 100644
index 4dedbd66b332d..0000000000000
--- a/pkgs/tools/misc/dt-shell-color-scripts/default.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-{ stdenv
-, lib
-, fetchFromGitLab
-, installShellFiles
-, runtimeShell
-, makeWrapper
-}:
-
-stdenv.mkDerivation {
-  pname = "dt-shell-color-scripts";
-  version = "unstable-2022-07-25";
-
-  src = fetchFromGitLab {
-    owner = "dwt1";
-    repo = "shell-color-scripts";
-    rev = "da2e3c512b94f312ee54a38d5cde131b0511ad01";
-    sha256 = "sha256-cdTgBbtsbJHaJuLIcZh0g0jKOrQyFx3P6QhYNx8hz0U=";
-  };
-
-  nativeBuildInputs = [ makeWrapper installShellFiles ];
-
-  installPhase = ''
-    runHook preInstall
-    patchShebangs ./colorscript.sh
-    patchShebangs ./colorscripts
-    mkdir -p $out/bin
-    mkdir -p $out/opt/shell-color-scripts/
-    cp -r colorscripts $out/opt/shell-color-scripts/colorscripts
-    installManPage colorscript.1
-    installShellCompletion --fish completions/colorscript.fish
-    installShellCompletion --zsh completions/_colorscript
-    chmod +x colorscript.sh
-    cp colorscript.sh $out/bin/colorscript
-    substituteInPlace $out/bin/colorscript \
-      --replace "/opt/shell-color-scripts/colorscripts" "$out/opt/shell-color-scripts/colorscripts"
-    runHook postInstall
-  '';
-
-    meta = with lib; {
-      description = "A collection of shell color scripts collected by dt (Derek Taylor)";
-      homepage = "https://gitlab.com/dwt1/shell-color-scripts";
-      license = with licenses; [ mit ];
-      maintainers = with maintainers; [ drzoidberg ];
-    };
-}
diff --git a/pkgs/tools/misc/dwt1-shell-color-scripts/default.nix b/pkgs/tools/misc/dwt1-shell-color-scripts/default.nix
new file mode 100644
index 0000000000000..39a9187b3babd
--- /dev/null
+++ b/pkgs/tools/misc/dwt1-shell-color-scripts/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, stdenvNoCC
+, fetchFromGitLab
+, installShellFiles
+}:
+
+stdenvNoCC.mkDerivation {
+  pname = "dwt1-shell-color-scripts";
+  version = "unstable-2023-03-27";
+
+  src = fetchFromGitLab {
+    owner = "dwt1";
+    repo = "shell-color-scripts";
+    rev = "576735cf656ece1bfd314e617b91c0e9d486d262";
+    hash = "sha256-1iDcUv6uVq5LzFgZo36RRKqAzKoYKZW/MnlbneayvCY=";
+  };
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  postPatch = ''
+    patchShebangs ./colorscript.sh
+    patchShebangs ./colorscripts
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin $out/share/shell-color-scripts
+    install -Dm755 colorscript.sh $out/bin/colorscript
+    cp -r colorscripts $out/share/shell-color-scripts/colorscripts
+
+    installManPage colorscript.1
+    installShellCompletion --fish completions/colorscript.fish
+    installShellCompletion --zsh completions/_colorscript
+
+    runHook postInstall
+  '';
+
+  postFixup = ''
+    substituteInPlace $out/bin/colorscript \
+      --replace "/opt/shell-color-scripts/colorscripts" \
+                "$out/share/shell-color-scripts/colorscripts"
+  '';
+
+  meta = {
+    homepage = "https://gitlab.com/dwt1/shell-color-scripts";
+    description = "A collection of shell color scripts collected by dt (Derek Taylor)";
+    license = with lib.licenses; [ mit ];
+    maintainers = with lib.maintainers; [ ];
+    platforms = lib.platforms.all;
+  };
+}
diff --git a/pkgs/tools/misc/enumer/default.nix b/pkgs/tools/misc/enumer/default.nix
index c7e7818d09ef2..0b2cd46463b30 100644
--- a/pkgs/tools/misc/enumer/default.nix
+++ b/pkgs/tools/misc/enumer/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "enumer";
-  version = "1.5.7";
+  version = "1.5.8";
 
   src = fetchFromGitHub {
     owner = "dmarkham";
     repo = "enumer";
     rev = "refs/tags/v${version}";
-    hash = "sha256-2fVWrrWOiCtg7I3Lul2PgQ2u/qDEDioPSB61Tp0rfEo=";
+    hash = "sha256-+YTsXYWVmJ32V/Eptip3WAiqIYv+6nqbdph0K2XzLdc=";
   };
 
-  vendorSha256 = "sha256-BmFv0ytRnjaB7z7Gb+38Fw2ObagnaFMnMhlejhaGxsk=";
+  vendorHash = "sha256-+dCitvPz2JUbybXVJxUOo1N6+SUPCSjlacL8bTSlb7w=";
 
   meta = with lib; {
     description = "Go tool to auto generate methods for enums";
diff --git a/pkgs/tools/misc/esphome/default.nix b/pkgs/tools/misc/esphome/default.nix
index 97ab9718b885e..783bf2b3f1826 100644
--- a/pkgs/tools/misc/esphome/default.nix
+++ b/pkgs/tools/misc/esphome/default.nix
@@ -16,14 +16,14 @@ let
 in
 python.pkgs.buildPythonApplication rec {
   pname = "esphome";
-  version = "2023.3.1";
+  version = "2023.3.2";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-h35V6tg6TewqJiZ4T5t6RNNaT2JEzqhbnJgH6xqqqzs=";
+    hash = "sha256-MfipnmBxCz8R0bNyJDRBP2R8JeOtgIm6Mu6SFPGkDc0=";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/misc/fd/default.nix b/pkgs/tools/misc/fd/default.nix
index 38055706004ba..b184545149142 100644
--- a/pkgs/tools/misc/fd/default.nix
+++ b/pkgs/tools/misc/fd/default.nix
@@ -13,8 +13,6 @@ rustPlatform.buildRustPackage rec {
 
   cargoHash = "sha256-AstE8KGICgPhqRKlJecrE9iPUUWaOvca6ocWf85IzNo=";
 
-  auditable = true; # TODO: remove when this is the default
-
   nativeBuildInputs = [ installShellFiles ];
 
   # skip flaky test
diff --git a/pkgs/tools/misc/fend/default.nix b/pkgs/tools/misc/fend/default.nix
index 6d96c33e5eef8..015175156315b 100644
--- a/pkgs/tools/misc/fend/default.nix
+++ b/pkgs/tools/misc/fend/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "fend";
-  version = "1.1.5";
+  version = "1.1.6";
 
   src = fetchFromGitHub {
     owner = "printfn";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-9qvIxKg/fj08wYY2fK5J1nWzojStUb9ArXwvA/cTOcQ=";
+    sha256 = "sha256-PO8QKZwtiNMlEFT2P61oe5kj6PWsP5uouOOTRtvpyxI=";
   };
 
-  cargoHash = "sha256-kVnA8w2YVg6+h1V1O4cvciuB7GM4/LULFsGrzy8xUMQ=";
+  cargoHash = "sha256-og2YoPUKKMBqEjryzSGqwLIm44WfKkerNtG2N7yl1wE=";
 
   nativeBuildInputs = [ pandoc installShellFiles ];
   buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
diff --git a/pkgs/tools/misc/goreleaser/default.nix b/pkgs/tools/misc/goreleaser/default.nix
index 5fa4b236981d0..cc77352353974 100644
--- a/pkgs/tools/misc/goreleaser/default.nix
+++ b/pkgs/tools/misc/goreleaser/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "goreleaser";
-  version = "1.16.2";
+  version = "1.17.0";
 
   src = fetchFromGitHub {
     owner = "goreleaser";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-BHx44ux+g642aTaV0Wlw/uz/3Vy4MJfuNffgqGDsb6I=";
+    sha256 = "sha256-OaTt6pFIfPYbonl2M1NBL6ET1XOt1Xe94zOCsEtJuGI=";
   };
 
-  vendorHash = "sha256-eVuEyQCO2/gufMJp8eUpC82wdJbbJsMKR1ZGv96C9mI=";
+  vendorHash = "sha256-KNHi8lSsya/vbpsWbr7un3bKsb6GcyhkrTurRhczxns=";
 
   ldflags =
     [ "-s" "-w" "-X main.version=${version}" "-X main.builtBy=nixpkgs" ];
diff --git a/pkgs/tools/misc/infracost/default.nix b/pkgs/tools/misc/infracost/default.nix
index c79a9f33afe5e..a38a58d57339e 100644
--- a/pkgs/tools/misc/infracost/default.nix
+++ b/pkgs/tools/misc/infracost/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "infracost";
-  version = "0.10.18";
+  version = "0.10.19";
 
   src = fetchFromGitHub {
     owner = "infracost";
     rev = "v${version}";
     repo = "infracost";
-    sha256 = "sha256-mvy/GFEzldRpzChF79wyfGd00K0tA6BAlRrAAAbt7Pc=";
+    sha256 = "sha256-1f1AP/yitmSTeZCopGGxA8f3hIEP6cvQcm8Ie24WJ1w=";
   };
-  vendorHash = "sha256-BplhgUIRZbMxYh2DWuGLpuNFmQuwen/u5oOs08fdXXY=";
+  vendorHash = "sha256-hbWhWs4b547oBTSM9SbVbJ5YifJdMwOwtp/3df2MHGg=";
 
   ldflags = [ "-s" "-w" "-X github.com/infracost/infracost/internal/version.Version=v${version}" ];
 
diff --git a/pkgs/tools/misc/interactsh/default.nix b/pkgs/tools/misc/interactsh/default.nix
index 75d92050aeedc..82719663cf2dc 100644
--- a/pkgs/tools/misc/interactsh/default.nix
+++ b/pkgs/tools/misc/interactsh/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "interactsh";
-  version = "1.1.0";
+  version = "1.1.2";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-ELj80stWOwACsCGmjt2QR8TxBFpvlYmVN7hWDPee8YE=";
+    hash = "sha256-a/rJbBYRERujvy7HBRavLdv7NdG7ofCQec4Ia1WPflc=";
   };
 
-  vendorHash = "sha256-xm7Iup4+xhcJ+Bzv56A0C3+2Fxz53qY8fqlVsMtFLd8=";
+  vendorHash = "sha256-YfqprpftCFH+tuEhcK4xWwenjv8BjFhzlTRsy1rz5Ec=";
 
   modRoot = ".";
   subPackages = [
diff --git a/pkgs/tools/misc/jfrog-cli/default.nix b/pkgs/tools/misc/jfrog-cli/default.nix
index 96a812986f033..a3dea2a9a60de 100644
--- a/pkgs/tools/misc/jfrog-cli/default.nix
+++ b/pkgs/tools/misc/jfrog-cli/default.nix
@@ -2,14 +2,14 @@
 
 buildGoModule rec {
   pname = "jfrog-cli";
-  version = "2.35.0";
-  vendorHash = "sha256-vOYfm6V1SyfhT7gX/Nk01hD/Txwh5UXCorzi6Jfl9I8=";
+  version = "2.36.0";
+  vendorHash = "sha256-oAekCcPoaruEq7oENhrpRj2K5l+y2/b6IzqtpQSAzk8=";
 
   src = fetchFromGitHub {
     owner = "jfrog";
     repo = "jfrog-cli";
     rev = "v${version}";
-    sha256 = "sha256-kaPGVNS+h+kZjG7+GupRxn6ypUfIU4BefPEl6QNA4cE=";
+    sha256 = "sha256-dyhJuKIUgWalpyM2DASjPsj3tpV9W3Z7AeMlHtWoQrk=";
   };
 
   postInstall = ''
diff --git a/pkgs/tools/misc/mongodb-compass/default.nix b/pkgs/tools/misc/mongodb-compass/default.nix
index 6ac50936efe7f..7bd813a582940 100644
--- a/pkgs/tools/misc/mongodb-compass/default.nix
+++ b/pkgs/tools/misc/mongodb-compass/default.nix
@@ -33,7 +33,7 @@ xorg,
 }:
 
 let
-  version = "1.36.1";
+  version = "1.36.2";
 
   rpath = lib.makeLibraryPath [
     alsa-lib
@@ -82,7 +82,7 @@ let
     if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchurl {
         url = "https://downloads.mongodb.com/compass/mongodb-compass_${version}_amd64.deb";
-        sha256 = "sha256-nM4Afka2dTjI9xn3cu23ACoj5qIFH4c7tJTNLmD23Jw=";
+        sha256 = "sha256-IegS2qQrInWiJAtAP9/voymuyWyyBYK6hbatmkOnFX4=";
       }
     else
       throw "MongoDB compass is not supported on ${stdenv.hostPlatform.system}";
diff --git a/pkgs/tools/misc/nux/default.nix b/pkgs/tools/misc/nux/default.nix
index d3f26d850e5f1..a852f830937ba 100644
--- a/pkgs/tools/misc/nux/default.nix
+++ b/pkgs/tools/misc/nux/default.nix
@@ -5,31 +5,34 @@
 , installShellFiles
 }:
 
-rustPlatform.buildRustPackage rec {
+let
   pname = "nux";
   version = "0.1.4";
+in
+rustPlatform.buildRustPackage {
+  inherit pname version;
 
   src = fetchFromGitHub {
     owner = "NuxPackage";
     repo = pname;
     rev = version;
-    sha256 = "sha256-k3HRaWN8/MTZRGWBxI8RRK0tcSYBbSLs3vHkUdLGTc8";
+    hash = "sha256-k3HRaWN8/MTZRGWBxI8RRK0tcSYBbSLs3vHkUdLGTc8";
   };
 
-  cargoSha256 = "sha256-wfUr3dcdALMEgJ6CaXhK4Gqk6xflCnov9tELA63drV4=";
+  cargoHash = "sha256-wfUr3dcdALMEgJ6CaXhK4Gqk6xflCnov9tELA63drV4=";
 
-  preFixup = ''
+  nativeBuildInputs = [ asciidoctor installShellFiles ];
+
+  postInstall = ''
     installManPage $releaseDir/build/nux-*/out/nux.1
     installShellCompletion $releaseDir/build/nux-*/out/nux.{bash,fish}
     installShellCompletion $releaseDir/build/nux-*/out/_nux
-
   '';
-  nativeBuildInputs = [ asciidoctor installShellFiles ];
 
-  meta = with lib; {
-    description = "A wrapper over the nix cli";
+  meta = {
     homepage = "https://github.com/NuxPackage/nux";
-    license = with licenses; [ gpl3 ];
-    maintainers = with maintainers; [ drzoidberg ];
+    description = "A wrapper over the nix cli";
+    license = with lib.licenses; [ gpl3Plus ];
+    maintainers = with lib.maintainers; [ ];
   };
 }
diff --git a/pkgs/tools/misc/onefetch/default.nix b/pkgs/tools/misc/onefetch/default.nix
index e6f03942cfe04..1011ded3a1e3a 100644
--- a/pkgs/tools/misc/onefetch/default.nix
+++ b/pkgs/tools/misc/onefetch/default.nix
@@ -14,16 +14,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "onefetch";
-  version = "2.16.0";
+  version = "2.17.0";
 
   src = fetchFromGitHub {
     owner = "o2sh";
     repo = pname;
     rev = version;
-    sha256 = "sha256-8YPexoTwtjYWSI2TP6mN3nkN8++3Upy+5AeQhb+HyyY=";
+    sha256 = "sha256-5d2u58i5VU+k1iC+bmiyKqe8qNTibryDxXNENxIflEI=";
   };
 
-  cargoSha256 = "sha256-FF7JRZsrWyZKIFcOutjnCwgJzrmcOqcPA6bx1m5k7Pk=";
+  cargoSha256 = "sha256-PLxccKkJg9LNckAVG2iXU9XB1olAvVZQYRG8R6s+ibU=";
 
   cargoPatches = [
     # enable pkg-config feature of zstd
diff --git a/pkgs/tools/misc/opentelemetry-collector/default.nix b/pkgs/tools/misc/opentelemetry-collector/default.nix
index e9448f84fd245..2b0664c3c515f 100644
--- a/pkgs/tools/misc/opentelemetry-collector/default.nix
+++ b/pkgs/tools/misc/opentelemetry-collector/default.nix
@@ -12,17 +12,17 @@ let
 in
 buildGoModule rec {
   pname = "opentelemetry-collector";
-  version = "0.71.0";
+  version = "0.74.0";
 
   src = fetchFromGitHub {
     owner = "open-telemetry";
     repo = "opentelemetry-collector";
     rev = "v${version}";
-    sha256 = "sha256-Y6HSz81edWklXhTbaK9LvdwmgNPRMtI1BD0IfcjWl3I=";
+    sha256 = "sha256-A2xiYCU2Lq/F59pQhgQD8sf1BcRvuaWKvGdxNGQ938E=";
   };
   # there is a nested go.mod
   sourceRoot = "source/cmd/otelcorecol";
-  vendorHash = "sha256-Zi9Rkfm+y0jZySwMJxAa5Sx/r5WAYvOVez3J0yQza2w=";
+  vendorHash = "sha256-VTPywVGs56lJxYLwmz71jBJ5ltxCZYUw0z6RslN2ZOE=";
 
   preBuild = ''
     # set the build version, can't be done via ldflags
diff --git a/pkgs/tools/misc/partition-manager/default.nix b/pkgs/tools/misc/partition-manager/default.nix
index 0d566eb11b2ff..4587830e6cd18 100644
--- a/pkgs/tools/misc/partition-manager/default.nix
+++ b/pkgs/tools/misc/partition-manager/default.nix
@@ -62,6 +62,13 @@ in mkDerivation rec {
 
   meta = with lib; {
     description = "KDE Partition Manager";
+    longDescription = ''
+      KDE Partition Manager is a utility to help you manage the disks, partitions, and file systems on your computer.
+      It allows you to easily create, copy, move, delete, back up, restore, and resize them without losing data.
+      It supports a large number of file systems, including ext2/3/4, btrfs, reiserfs, NTFS, FAT16/32, JFS, XFS and more.
+
+      To install on NixOS, use the option `programs.partition-manager.enable = true`.
+    '';
     license = with licenses; [ cc-by-40 cc0 gpl3Plus lgpl3Plus mit ];
     homepage = "https://www.kde.org/applications/system/kdepartitionmanager/";
     maintainers = with maintainers; [ peterhoeg oxalica ];
diff --git a/pkgs/tools/misc/pipe-rename/default.nix b/pkgs/tools/misc/pipe-rename/default.nix
index 529a7db25b502..5d7d37bb585c5 100644
--- a/pkgs/tools/misc/pipe-rename/default.nix
+++ b/pkgs/tools/misc/pipe-rename/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "pipe-rename";
-  version = "1.6.1";
+  version = "1.6.2";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-95Gj5iy8VYBzpV0kmGhronIR5LSjelfOueBQD/8gbfw=";
+    sha256 = "sha256-eMTqKKcFeEICref35/RHWNzpnjLDrG7rjcXjOSAnwIo=";
   };
 
-  cargoSha256 = "sha256-HiElAPgNeICEVbMBfK6syCoQb5smHhBH1MOuo2swci4=";
+  cargoSha256 = "sha256-X4wmhyWpjq4EyAVsfdeP76NSC9tcZjZ6woCsRvw0Gzo=";
 
   nativeCheckInputs = [ python3 ];
 
diff --git a/pkgs/tools/misc/pistol/default.nix b/pkgs/tools/misc/pistol/default.nix
index 930554d18696a..97acb528abae6 100644
--- a/pkgs/tools/misc/pistol/default.nix
+++ b/pkgs/tools/misc/pistol/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "pistol";
-  version = "0.3.2";
+  version = "0.3.3";
 
   src = fetchFromGitHub {
     owner = "doronbehar";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-DGbWlEDI/qGNpdT8N79RsLxnUm4Sw8lHFRIBFd1GmK0=";
+    sha256 = "sha256-6V3Du3+0YliwzsvZolapBAnyqbsv1WZhWQkaldDR+Ok=";
   };
 
-  vendorSha256 = "sha256-poTd0lXRaJeDxwcw+h76NPC0mFB9nwm2vLLB5UUK1dk=";
+  vendorSha256 = "sha256-jURN0NSc9SFHFMS8QdaEqqBwOHnAEEJQlQXHTUDRiyE=";
 
   doCheck = false;
 
@@ -30,7 +30,7 @@ buildGoModule rec {
     installShellFiles
     asciidoctor
   ];
-  postBuild = ''
+  postInstall = ''
     asciidoctor -b manpage -d manpage README.adoc
     installManPage pistol.1
   '';
diff --git a/pkgs/tools/misc/pre-commit/default.nix b/pkgs/tools/misc/pre-commit/default.nix
index 7ea5b8e7ae327..fac2d23fa7298 100644
--- a/pkgs/tools/misc/pre-commit/default.nix
+++ b/pkgs/tools/misc/pre-commit/default.nix
@@ -17,7 +17,7 @@
 with python3Packages;
 buildPythonApplication rec {
   pname = "pre-commit";
-  version = "3.1.0";
+  version = "3.2.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonApplication rec {
     owner = "pre-commit";
     repo = "pre-commit";
     rev = "v${version}";
-    hash = "sha256-riAXvpJmuQHOfruwebijiAgN2AvqpUUI07p758qO+4k=";
+    hash = "sha256-WRQdxFlTpLmQpX9x3swlkSr2iv0alSiCRtTjhQC164c=";
   };
 
   patches = [
diff --git a/pkgs/tools/misc/shell_gpt/default.nix b/pkgs/tools/misc/shell_gpt/default.nix
index b8b3fbb1af515..9e3000a3cf722 100644
--- a/pkgs/tools/misc/shell_gpt/default.nix
+++ b/pkgs/tools/misc/shell_gpt/default.nix
@@ -1,14 +1,15 @@
 { lib
 , python3
+, nix-update-script
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "shell_gpt";
-  version = "0.7.3";
+  version = "0.8.8";
 
   src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "sha256-lS8zLtsh8Uz782KJwHqifEQnWQswbCXRVIfXWAmWtvI=";
+    sha256 = "sha256-KuaSAiXlqWRhFtX4C6vibbUiq43L83pZX+yM9L7Ej68=";
   };
 
   nativeBuildInputs = with python3.pkgs; [
@@ -27,6 +28,8 @@ python3.pkgs.buildPythonApplication rec {
 
   pythonRelaxDeps = [ "requests" "rich" "distro" "typer" ];
 
+  passthru.updateScript = nix-update-script { };
+
   doCheck = false;
 
   meta = with lib; {
diff --git a/pkgs/tools/misc/starship/default.nix b/pkgs/tools/misc/starship/default.nix
index e9257bd359638..1835f91025975 100644
--- a/pkgs/tools/misc/starship/default.nix
+++ b/pkgs/tools/misc/starship/default.nix
@@ -14,13 +14,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "starship";
-  version = "1.13.1";
+  version = "1.14.1";
 
   src = fetchFromGitHub {
     owner = "starship";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-MgCYlcJoNJ3eChH7WLKgvgblmz9Wy6JplULjeGGiEXY=";
+    hash = "sha256-KhuAgC58oEdUiCWZjUShfDpNe0m0ENfn2QJVOlzpIyo=";
   };
 
   nativeBuildInputs = [ installShellFiles cmake ];
@@ -36,7 +36,7 @@ rustPlatform.buildRustPackage rec {
       --zsh <($out/bin/starship completions zsh)
   '';
 
-  cargoHash = "sha256-sdETcvmz9mWTXEt9h7vP+FKolhnamkwtbkYiJE/HVX0=";
+  cargoHash = "sha256-gdJzH2/gJDg3sNR28Daq4B+KEn565jXhkxZFsrVx/uI=";
 
   nativeCheckInputs = [ git ];
 
diff --git a/pkgs/tools/misc/timer/default.nix b/pkgs/tools/misc/timer/default.nix
index 6332f6de64ec5..29e087c86581f 100644
--- a/pkgs/tools/misc/timer/default.nix
+++ b/pkgs/tools/misc/timer/default.nix
@@ -2,22 +2,20 @@
 
 buildGoModule rec {
   pname = "timer";
-  version = "unstable-2023-02-01";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "caarlos0";
     repo = "timer";
-    rev = "1f437baceb1ca76b341fdc229fe45938b282f2aa";
-    hash = "sha256-u+naemEiKufKYROuJB55u8QgiIgg4nLsB+FerUImtXs=";
+    rev = "v${version}";
+    hash = "sha256-9p/L3Hj3VqlNiyY3lfUAhCjwTl1iSTegWxaVEGB4qHM=";
   };
 
-  vendorHash = "sha256-n4AjaojcDAYbgOIuaAJ4faVJqV+/0uby5OHRMsyL9Dg=";
+  vendorHash = "sha256-j7Xik0te6GdjfhXHT7DRf+MwM+aKjfgTGvroxnlD3MM=";
 
   ldflags = [ "-s" "-w" "-X main.version=${version}" ];
 
-  passthru.tests.version = testers.testVersion {
-    package = timer;
-  };
+  passthru.tests.version = testers.testVersion { package = timer; };
 
   meta = with lib; {
     description = "A `sleep` with progress";
diff --git a/pkgs/tools/misc/tmux-sessionizer/default.nix b/pkgs/tools/misc/tmux-sessionizer/default.nix
index 04102746b2428..e01a2f9cb6bd2 100644
--- a/pkgs/tools/misc/tmux-sessionizer/default.nix
+++ b/pkgs/tools/misc/tmux-sessionizer/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "tmux-sessionizer";
-  version = "0.2.0";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
     owner = "jrmoulton";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-FSh3ww5KpktNSvqB3kcIaTxNHypwsVTHze0mgBtuJQE=";
+    sha256 = "sha256-fV+LBs+jbcOjArUfygEXkyxg/xGhI35YduUkx4AyQhk=";
   };
 
-  cargoSha256 = "sha256-3DyLYegAzNbPpW6MUIDLm1QUqmGg8zH0Ps1dbdaSezs=";
+  cargoHash = "sha256-Bg4C4r3h/kaMsAqzit9JVuAe7vYrRB9W5OLOWPgCJHc=";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
diff --git a/pkgs/tools/misc/wakapi/default.nix b/pkgs/tools/misc/wakapi/default.nix
index 1300b2df9081f..6ca2537077864 100644
--- a/pkgs/tools/misc/wakapi/default.nix
+++ b/pkgs/tools/misc/wakapi/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "wakapi";
-  version = "2.6.2";
+  version = "2.7.0";
 
   src = fetchFromGitHub {
     owner = "muety";
     repo = pname;
     rev = version;
-    sha256 = "sha256-yMxcePwBUteqrdfvDjZSRInOXMFmwaFoVBihcMQFTME=";
+    sha256 = "sha256-1EMSrHx6Tx58voz5veyNZg1gnubuGyg2K4dg2QdzmMw=";
   };
 
-  vendorHash = "sha256-sfx8qlmJrS0hkD6DSvKqfnBDbxj8eNA3hnprSwA2fSI=";
+  vendorHash = "sha256-0wHXULDKyXYBTGxfSQXT/5NidPtSnx7ujb8vyczmE38=";
 
   # Not a go module required by the project, contains development utilities
   excludedPackages = [ "scripts" ];
diff --git a/pkgs/tools/misc/wakatime/default.nix b/pkgs/tools/misc/wakatime/default.nix
index eda5790c7c41a..d2274d9089569 100644
--- a/pkgs/tools/misc/wakatime/default.nix
+++ b/pkgs/tools/misc/wakatime/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "wakatime";
-  version = "1.70.0";
+  version = "1.70.1";
 
   src = fetchFromGitHub {
     owner = "wakatime";
     repo = "wakatime-cli";
     rev = "v${version}";
-    hash = "sha256-JURz3xPZIqrPreh+kT+o62cOhw55anUH4kqaT3t0tM0=";
+    hash = "sha256-PZIO8ULvSdsOeRLGPrsRyoql8Z4Xq7z4q/AErw239BI=";
   };
 
   vendorHash = "sha256-SlYYrlRDBvhNm2BxemK9HzzsqM/RGH/sDQXpoGEY8rw=";
diff --git a/pkgs/tools/misc/watchexec/default.nix b/pkgs/tools/misc/watchexec/default.nix
index bde4a0d3af2c7..a4d87973a2428 100644
--- a/pkgs/tools/misc/watchexec/default.nix
+++ b/pkgs/tools/misc/watchexec/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "watchexec";
-  version = "1.22.0";
+  version = "1.22.2";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-5CDiiDmUQllsi07OrhCSERkPOOhQoYSNInGewaBGLzw=";
+    sha256 = "sha256-dO1vIzjsBrrMQ0H3Yv4X5rYPlCrWSlPbFmyooaODPeo=";
   };
 
-  cargoHash = "sha256-peHAS+/UvEn0CB94ybhSwu2v7RON0FzVnlhVUJSRQrM=";
+  cargoHash = "sha256-6bLY9m6g7hSlYI3KrLS3fN4ATRkkbtq3Wf5xqS1G30s=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/networking/boundary/default.nix b/pkgs/tools/networking/boundary/default.nix
index 737679925b2c8..6459af797f739 100644
--- a/pkgs/tools/networking/boundary/default.nix
+++ b/pkgs/tools/networking/boundary/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "boundary";
-  version = "0.12.1";
+  version = "0.12.2";
 
   src =
     let
@@ -15,10 +15,10 @@ stdenv.mkDerivation rec {
         aarch64-darwin = "darwin_arm64";
       };
       sha256 = selectSystem {
-        x86_64-linux = "sha256-VRHcmy1pIn1BrYv9SJieKJxGlM8fKycNQBkwn6Yi7QI=";
-        aarch64-linux = "sha256-FamkdNYbArqRPCD1tPvSe3YaOlCkmhIPziDlKnz+9Fg=";
-        x86_64-darwin = "sha256-T595PGfqNyg+rmkS4lI5xN2nUVCrW+u6WRsz+imud64=";
-        aarch64-darwin = "sha256-Xavks5qx2IVhEDzM/8/pBEPKvdrWeKMJ/KR21puLFXs=";
+        x86_64-linux = "sha256-8JqteVRGT5UT1AgZeBMFjpTZOU/4/6/ZcJxdWcqU5G8=";
+        aarch64-linux = "sha256-msVbtcBfDFOjU7BebbtEV05LjBdWDlI1Q/8YEwMbyq0=";
+        x86_64-darwin = "sha256-ZXz0y6GvoCpeKcPJXV0t828fBBfeFAO+zmUAqCIOysU=";
+        aarch64-darwin = "sha256-4xnM7k5i4XssQQ6Y0h2hq9s4TLnuazhqXiGQMhR4HNU=";
       };
     in
     fetchzip {
@@ -45,6 +45,7 @@ stdenv.mkDerivation rec {
 
   dontPatchELF = true;
   dontPatchShebangs = true;
+  dontStrip = true;
 
   passthru.updateScript = ./update.sh;
 
@@ -64,5 +65,6 @@ stdenv.mkDerivation rec {
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.mpl20;
     maintainers = with maintainers; [ jk techknowlogick ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/networking/clash-meta/default.nix b/pkgs/tools/networking/clash-meta/default.nix
index e4f2e8399ff5b..803c9203a3188 100644
--- a/pkgs/tools/networking/clash-meta/default.nix
+++ b/pkgs/tools/networking/clash-meta/default.nix
@@ -4,16 +4,20 @@
 }:
 buildGoModule rec {
   pname = "clash-meta";
-  version = "1.14.2";
+  version = "1.14.3";
 
   src = fetchFromGitHub {
     owner = "MetaCubeX";
     repo = "Clash.Meta";
     rev = "v${version}";
-    sha256 = "sha256-sn+0TNXCK4af4zfkf09hLsFkuvkcyjhwh35kKo993FQ=";
+    # macOS has a case-insensitive filesystem, so these two can be the same file
+    postFetch = ''
+      rm -f $out/.github/workflows/{Delete,delete}.yml
+    '';
+    hash = "sha256-HITuxnzzyHBJ3PlXHYR0M1r3x70AtwzAp1hQ6pX16Bo=";
   };
 
-  vendorHash = "sha256-3j+5fF57eu7JJd3rnrWYwuWDivycUkUTTzptYaK3G/Q=";
+  vendorHash = "sha256-D6b0U04wwDUzeIu3//E10YehohTzvyHWtK5Yzf3xrAI=";
 
   # Do not build testing suit
   excludedPackages = [ "./test" ];
diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix
index 16136296879ca..c0b488627efa2 100644
--- a/pkgs/tools/networking/curl/default.nix
+++ b/pkgs/tools/networking/curl/default.nix
@@ -22,6 +22,7 @@
 , rtmpSupport ? false, rtmpdump
 , scpSupport ? zlibSupport && !stdenv.isSunOS && !stdenv.isCygwin, libssh2
 , wolfsslSupport ? false, wolfssl
+, rustlsSupport ? false, rustls-ffi
 , zlibSupport ? true, zlib
 , zstdSupport ? false, zstd
 
@@ -42,9 +43,7 @@
 # cgit) that are needed here should be included directly in Nixpkgs as
 # files.
 
-assert !(gnutlsSupport && opensslSupport);
-assert !(gnutlsSupport && wolfsslSupport);
-assert !(opensslSupport && wolfsslSupport);
+assert !((lib.count (x: x) [ gnutlsSupport opensslSupport wolfsslSupport rustlsSupport ]) > 1);
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "curl";
@@ -89,6 +88,7 @@ stdenv.mkDerivation (finalAttrs: {
     optional rtmpSupport rtmpdump ++
     optional scpSupport libssh2 ++
     optional wolfsslSupport wolfssl ++
+    optional rustlsSupport rustls-ffi ++
     optional zlibSupport zlib ++
     optional zstdSupport zstd;
 
@@ -104,11 +104,12 @@ stdenv.mkDerivation (finalAttrs: {
       (lib.enableFeature c-aresSupport "ares")
       (lib.enableFeature ldapSupport "ldap")
       (lib.enableFeature ldapSupport "ldaps")
-      # The build fails when using wolfssl with --with-ca-fallback
-      (lib.withFeature (!wolfsslSupport) "ca-fallback")
+      # --with-ca-fallback is only supported for openssl and gnutls https://github.com/curl/curl/blame/curl-8_0_1/acinclude.m4#L1640
+      (lib.withFeature (opensslSupport || gnutlsSupport) "ca-fallback")
       (lib.withFeature http3Support "nghttp3")
       (lib.withFeature http3Support "ngtcp2")
       (lib.withFeature rtmpSupport "librtmp")
+      (lib.withFeature rustlsSupport "rustls")
       (lib.withFeature zstdSupport "zstd")
       (lib.withFeatureAs brotliSupport "brotli" (lib.getDev brotli))
       (lib.withFeatureAs gnutlsSupport "gnutls" (lib.getDev gnutls))
@@ -129,7 +130,7 @@ stdenv.mkDerivation (finalAttrs: {
       # Without this curl might detect /etc/ssl/cert.pem at build time on macOS, causing curl to ignore NIX_SSL_CERT_FILE.
       "--without-ca-bundle"
       "--without-ca-path"
-    ] ++ lib.optionals (!gnutlsSupport && !opensslSupport && !wolfsslSupport) [
+    ] ++ lib.optionals (!gnutlsSupport && !opensslSupport && !wolfsslSupport && !rustlsSupport) [
       "--without-ssl"
     ];
 
diff --git a/pkgs/tools/networking/dnsproxy/default.nix b/pkgs/tools/networking/dnsproxy/default.nix
index 730c840d2be49..9783a9fcb9d2a 100644
--- a/pkgs/tools/networking/dnsproxy/default.nix
+++ b/pkgs/tools/networking/dnsproxy/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "dnsproxy";
-  version = "0.46.5";
+  version = "0.48.3";
 
   src = fetchFromGitHub {
     owner = "AdguardTeam";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-NoRB0S9hdxy6udiIbvYW8yYSuVNXIC12CXuMoNB4nNo=";
+    sha256 = "sha256-fQg9FsqTqSfFeCAiQZISJg6MkXqpAlYiJs8FBzYUmDs=";
   };
 
-  vendorSha256 = null;
+  vendorHash = null;
 
   ldflags = [ "-s" "-w" "-X" "main.VersionString=${version}" ];
 
diff --git a/pkgs/tools/networking/driftnet/default.nix b/pkgs/tools/networking/driftnet/default.nix
index 4f077a4bc95ee..ccf6da31be28e 100644
--- a/pkgs/tools/networking/driftnet/default.nix
+++ b/pkgs/tools/networking/driftnet/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "driftnet";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "deiv";
     repo = "driftnet";
     rev = "refs/tags/v${version}";
-    hash = "sha256-szmezYnszlRanq8pMD0CIGA+zTYGSwSHcDaZ2Gx1KCA=";
+    hash = "sha256-lMn60vtOMPs1Tr+SnAOUZDrNIO7gEXdHpizjXiEkkoM=";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/networking/dsniff/default.nix b/pkgs/tools/networking/dsniff/default.nix
index 592ec23086577..24e1ef29ef31f 100644
--- a/pkgs/tools/networking/dsniff/default.nix
+++ b/pkgs/tools/networking/dsniff/default.nix
@@ -1,5 +1,5 @@
 { gcc9Stdenv, lib, fetchFromGitLab, autoreconfHook, libpcap, db, glib, libnet, libnids, symlinkJoin, openssl
-, rpcsvc-proto, libtirpc, libnsl
+, rpcsvc-proto, libtirpc, libnsl, libnl
 }:
 
 # We compile with GCC 9 since GCC 10 segfaults on the code
@@ -59,8 +59,8 @@ in gcc9Stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ autoreconfHook rpcsvc-proto ];
-  buildInputs = [ glib pcap libtirpc libnsl ];
-  NIX_CFLAGS_LINK = "-lglib-2.0 -lpthread -ltirpc";
+  buildInputs = [ glib pcap libtirpc libnsl libnl ];
+  NIX_CFLAGS_LINK = "-lglib-2.0 -lpthread -ltirpc -lnl-3 -lnl-genl-3";
   env.NIX_CFLAGS_COMPILE = toString [ "-I${libtirpc.dev}/include/tirpc" ];
   postPatch = ''
     for patch in debian/patches/*.patch; do
diff --git a/pkgs/tools/networking/gobgp/default.nix b/pkgs/tools/networking/gobgp/default.nix
index d624d1f48d759..c01ac789b73c2 100644
--- a/pkgs/tools/networking/gobgp/default.nix
+++ b/pkgs/tools/networking/gobgp/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gobgp";
-  version = "3.12.0";
+  version = "3.13.0";
 
   src = fetchFromGitHub {
     owner = "osrg";
     repo = "gobgp";
     rev = "v${version}";
-    sha256 = "sha256-keev3DZ3xN5UARuYKfSdox0KKBjrM5RoMD273Aw0AGY=";
+    sha256 = "sha256-qXLg/EZF2eU7BhILHO7Uu4juz0tVZLq37foQcSKv0P8=";
   };
 
-  vendorHash = "sha256-5lRW9gWQZRRqZoVB16kI1VEnr0XsiPtLUuioK/0f8w0=";
+  vendorHash = "sha256-ofPz9IX+4ylch6Qe0ksGZqrP5x6AktqF0JAs/hLBQo0=";
 
   postConfigure = ''
     export CGO_ENABLED=0
diff --git a/pkgs/tools/networking/i2p/default.nix b/pkgs/tools/networking/i2p/default.nix
index 6cc64a171d53c..e1b73f1b3e691 100644
--- a/pkgs/tools/networking/i2p/default.nix
+++ b/pkgs/tools/networking/i2p/default.nix
@@ -11,13 +11,17 @@
 , java-service-wrapper
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "i2p";
-  version = "2.1.0";
+  version = "2.2.0";
 
   src = fetchurl {
-    url = "https://files.i2p-projekt.de/${version}/i2psource_${version}.tar.bz2";
-    sha256 = "sha256-gwmMEncgTFVpKEsys37xN2VrJ7/hXvkD7KLafCaSiNE=";
+    urls = map (mirror: "${mirror}/${finalAttrs.version}/i2psource_${finalAttrs.version}.tar.bz2") [
+      "https://download.i2p2.de/releases"
+      "https://files.i2p-projekt.de"
+      "https://download.i2p2.no/releases"
+    ];
+    sha256 = "sha256-5LoGpuKTWheZDwV6crjXnkUqJVamzv5QEtXdY0Zv7r8=";
   };
 
   buildInputs = [ jdk ant gettext which ];
@@ -64,4 +68,4 @@ stdenv.mkDerivation rec {
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = with maintainers; [ joelmo ];
   };
-}
+})
diff --git a/pkgs/tools/networking/libreswan/default.nix b/pkgs/tools/networking/libreswan/default.nix
index 47838f7566354..a8e0dccdd2bbf 100644
--- a/pkgs/tools/networking/libreswan/default.nix
+++ b/pkgs/tools/networking/libreswan/default.nix
@@ -89,6 +89,11 @@ stdenv.mkDerivation rec {
         -e 's|systemd-tmpfiles|true|g' \
         -i initsystems/systemd/Makefile
 
+    # Fix systemd detection on NixOS
+    sed -e 's|\(-a ! -x /bin/journalctl\)|\1 -a ! -x /run/current-system/sw/bin/journalctl|g' \
+        -e 's|\(-o ! -x /bin/journalctl\)|\1 -o ! -x /run/current-system/sw/bin/journalctl|g' \
+        -i programs/barf/barf.in
+
     # Fix the ipsec program from crushing the PATH
     sed -e 's|\(PATH=".*"\):.*$|\1:$PATH|' -i programs/ipsec/ipsec.in
 
diff --git a/pkgs/tools/networking/mailutils/default.nix b/pkgs/tools/networking/mailutils/default.nix
index 4eb1a47383227..dbc7bf2d3f36a 100644
--- a/pkgs/tools/networking/mailutils/default.nix
+++ b/pkgs/tools/networking/mailutils/default.nix
@@ -23,6 +23,7 @@
 , sasl
 , system-sendmail
 , libxcrypt
+, mkpasswd
 
 , pythonSupport ? true
 , guileSupport ? true
@@ -79,6 +80,9 @@ stdenv.mkDerivation rec {
       url = "https://lists.gnu.org/archive/html/bug-mailutils/2020-11/txtiNjqcNpqOk.txt";
       sha256 = "0ghzqb8qx2q8cffbvqzw19mivv7r5f16whplzhm7hdj0j2i6xf6s";
     })
+    # https://github.com/NixOS/nixpkgs/issues/223967
+    # https://lists.gnu.org/archive/html/bug-mailutils/2023-04/msg00000.html
+    ./don-t-use-descrypt-password-in-the-test-suite.patch
   ];
 
   enableParallelBuilding = true;
@@ -94,7 +98,7 @@ stdenv.mkDerivation rec {
   ] ++ lib.optional (!pythonSupport) "--without-python"
     ++ lib.optional (!guileSupport) "--without-guile";
 
-  nativeCheckInputs = [ dejagnu ];
+  nativeCheckInputs = [ dejagnu mkpasswd ];
   doCheck = !stdenv.isDarwin; # ERROR: All 46 tests were run, 46 failed unexpectedly.
   doInstallCheck = false; # fails
 
diff --git a/pkgs/tools/networking/mailutils/don-t-use-descrypt-password-in-the-test-suite.patch b/pkgs/tools/networking/mailutils/don-t-use-descrypt-password-in-the-test-suite.patch
new file mode 100644
index 0000000000000..ac85496018ade
--- /dev/null
+++ b/pkgs/tools/networking/mailutils/don-t-use-descrypt-password-in-the-test-suite.patch
@@ -0,0 +1,59 @@
+From 59a1abfa7b339bccfc228f38cc791cdacf4010d4 Mon Sep 17 00:00:00 2001
+From: Michal Sojka <michal.sojka@cvut.cz>
+Date: Sat, 1 Apr 2023 10:59:00 +0200
+Subject: [PATCH] Don't use descrypt password in the test suite
+
+The descrypt method is not considered strong and some
+distributions (like NixOS) start compiling libxcrypt without it [1].
+
+To start using different hash methods, it is not sufficient to replace
+the password hash in testsuite/etc/passwd.in, because differently
+hashed passwords contain '$' characters (e.g.
+$y$j9T$lP8UWS9GZ4zfeTVDpmtbr1$dVozXOvWQXLQyhWGX7YyW8TIQTg8EfQLUzYPp3WCWo9)
+and the test suite replaces '$'-starting strings with values of the
+corresponding variables. Since I've not found a way to escape dollars
+for TCL's subst function, we do not hardcode the passwd hash directly
+to the file, but generate it dynamically and replace it in the file
+via a variable.
+
+[1]: https://github.com/NixOS/nixpkgs/pull/220557
+---
+ pop3d/testsuite/lib/pop3d.exp | 1 +
+ testsuite/etc/passwd.in       | 2 +-
+ testsuite/lib/mailutils.exp   | 1 +
+ 3 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/pop3d/testsuite/lib/pop3d.exp b/pop3d/testsuite/lib/pop3d.exp
+index 930861d8a..3b67844d2 100644
+--- a/pop3d/testsuite/lib/pop3d.exp
++++ b/pop3d/testsuite/lib/pop3d.exp
+@@ -26,6 +26,7 @@ if ![mu_check_capability ENABLE_VIRTUAL_DOMAINS] {
+ }
+ 
+ set POP3D_ETC_DIR "$MU_DATA_DIR/etc"
++set MU_PASSWD_HASH [exec mkpasswd --method=yescrypt guessme]
+ mu_makespool "$MU_RC_DIR" "$POP3D_ETC_DIR"
+ mu_create_config pop3d
+ 
+diff --git a/testsuite/etc/passwd.in b/testsuite/etc/passwd.in
+index c4e471b09..b13a75238 100644
+--- a/testsuite/etc/passwd.in
++++ b/testsuite/etc/passwd.in
+@@ -1 +1 @@
+-user:abld/G2Q2Le2w:1000:1000:Test User:$MU_SPOOL_DIR:/bin/sh
++user:$MU_PASSWD_HASH:1000:1000:Test User:$MU_SPOOL_DIR:/bin/sh
+diff --git a/testsuite/lib/mailutils.exp b/testsuite/lib/mailutils.exp
+index e4d45c85b..725ccf259 100644
+--- a/testsuite/lib/mailutils.exp
++++ b/testsuite/lib/mailutils.exp
+@@ -39,6 +39,7 @@ proc mu_copy_file {src dst} {
+     global MU_FOLDER_DIR
+     global MU_RC_DIR 
+     global MU_DATA_DIR
++    global MU_PASSWD_HASH
+     
+     set input [open $src r]
+     set output [open $dst w]
+-- 
+2.39.2
+
diff --git a/pkgs/tools/networking/netbird/default.nix b/pkgs/tools/networking/netbird/default.nix
index 80cc4f097a217..0323c8e6f8550 100644
--- a/pkgs/tools/networking/netbird/default.nix
+++ b/pkgs/tools/networking/netbird/default.nix
@@ -14,16 +14,16 @@ let
 in
 buildGoModule rec {
   pname = "netbird";
-  version = "0.14.4";
+  version = "0.14.6";
 
   src = fetchFromGitHub {
     owner = "netbirdio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-AzWYJGYlUsgR5ihXwY9ZyN/pL5avionql/jwqhYKsxc=";
+    sha256 = "sha256-S11PshEVwOYPb8RGs5joC3Cr8CNKAenK6JRd/oV4LNQ=";
   };
 
-  vendorHash = "sha256-8cVEujVKwKvO81H+ukVxQouVVH7uZm/FwK9RAKJLN2c=";
+  vendorHash = "sha256-RyTfEZPwr2CNb9M8vGmo4gtbqQDh2KWApyz2Yx6qPmk=";
 
   nativeBuildInputs = [ installShellFiles ] ++ lib.optional ui pkg-config;
 
diff --git a/pkgs/tools/networking/ntopng/default.nix b/pkgs/tools/networking/ntopng/default.nix
index d5700c42534c2..c1feb3126d7dd 100644
--- a/pkgs/tools/networking/ntopng/default.nix
+++ b/pkgs/tools/networking/ntopng/default.nix
@@ -1,38 +1,77 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, autoreconfHook
-, zeromq, ndpi, json_c, openssl, libpcap, libcap, curl, libmaxminddb
-, rrdtool, sqlite, libmysqlclient, expat, net-snmp
+{ lib
+, stdenv
+, autoreconfHook
+, curl
+, expat
+, fetchFromGitHub
+, git
+, json_c
+, libcap
+, libmaxminddb
+, libmysqlclient
+, libpcap
+, libsodium
+, ndpi
+, net-snmp
+, openssl
+, pkg-config
+, rdkafka
+, gtest
+, rrdtool
+, hiredis
+, sqlite
+, which
+, zeromq
 }:
 
 stdenv.mkDerivation rec {
   pname = "ntopng";
-  version = "5.2.1";
+  version = "5.6";
 
   src = fetchFromGitHub {
     owner = "ntop";
     repo = "ntopng";
-    rev = version;
-    sha256 = "sha256-FeRERSq8F3HEelUCkA6pgNNcP94xrWy6EbJgk+cEdqc=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-iGqrS0AneKYwGMEpbKy9if8bnaEu6aEV+QaH+JrF9xs=";
   };
 
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/ntop/ntopng/commit/0aa580e1a45f248fffe6d11729ce40571f08e187.patch";
-      sha256 = "sha256-xqEVwfGgkNS+akbJnLZsVvEQdp9GxxUen8VkFomtcPI=";
-    })
-  ];
+  preConfigure = ''
+    substituteInPlace Makefile.in \
+      --replace "/bin/rm" "rm"
+  '';
 
-  nativeBuildInputs = [ autoreconfHook pkg-config ];
+  nativeBuildInputs = [
+    autoreconfHook
+    git
+    pkg-config
+    which
+  ];
 
   buildInputs = [
-    zeromq ndpi json_c openssl libpcap curl libmaxminddb rrdtool sqlite
-    libmysqlclient expat net-snmp libcap
+    curl
+    expat
+    json_c
+    libcap
+    libmaxminddb
+    libmysqlclient
+    libpcap
+    gtest
+    hiredis
+    libsodium
+    net-snmp
+    openssl
+    rdkafka
+    rrdtool
+    sqlite
+    zeromq
   ];
 
   autoreconfPhase = "bash autogen.sh";
 
-  preConfigure = ''
-    substituteInPlace Makefile.in --replace "/bin/rm" "rm"
-  '';
+  configureFlags = [
+    "--with-ndpi-includes=${ndpi}/include/ndpi"
+    "--with-ndpi-static-lib=${ndpi}/lib/"
+  ];
 
   preBuild = ''
     sed -e "s|\(#define CONST_BIN_DIR \).*|\1\"$out/bin\"|g" \
@@ -44,9 +83,10 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "High-speed web-based traffic analysis and flow collection tool";
-    homepage = "http://www.ntop.org/products/ntop/";
+    homepage = "https://www.ntop.org/products/traffic-analysis/ntop/";
+    changelog = "https://github.com/ntop/ntopng/blob/${version}/CHANGELOG.md";
     license = licenses.gpl3Plus;
     platforms = platforms.linux ++ platforms.darwin;
-    maintainers = [ maintainers.bjornfor ];
+    maintainers = with maintainers; [ bjornfor ];
   };
 }
diff --git a/pkgs/tools/networking/pritunl-client/default.nix b/pkgs/tools/networking/pritunl-client/default.nix
index 5cf8ea3fe6fc9..7e0399a897210 100644
--- a/pkgs/tools/networking/pritunl-client/default.nix
+++ b/pkgs/tools/networking/pritunl-client/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "pritunl-client";
-  version = "1.3.3477.58";
+  version = "1.3.3484.2";
 
   src = fetchFromGitHub {
     owner = "pritunl";
     repo = "pritunl-client-electron";
     rev = version;
-    sha256 = "sha256-XsYdmJINzeZgvofsKTG/4dXNv4r46FLkEmNGQki1tmU=";
+    sha256 = "sha256-thIbw/Iek2vNNmkOBHrzEhTbaOm05CsbjqORQKC2jIs=";
   };
 
   modRoot = "cli";
diff --git a/pkgs/tools/networking/q/default.nix b/pkgs/tools/networking/q/default.nix
index e67a17cea8633..35c6ecb9dc0ca 100644
--- a/pkgs/tools/networking/q/default.nix
+++ b/pkgs/tools/networking/q/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "q";
-  version = "0.9.0";
+  version = "0.11.1";
 
   src = fetchFromGitHub {
     owner = "natesales";
     repo = "q";
     rev = "v${version}";
-    sha256 = "sha256-WPVHMAau3+0jcIrRhRL5dy6h+J13LKj5GwQMJi7hGvo=";
+    sha256 = "sha256-kS3t4bAvxFoZBE5UMM5yJ0WbsN6MqkEYhkl8wiBJKQg=";
   };
 
-  vendorHash = "sha256-0Yd8y1SkxmfIFZuSheMGQnurlFv3sxkSDgGrQJLR3iU=";
+  vendorHash = "sha256-jjhDD0qZh4QHjFO14+FsRFxEywByHB2gIxy/w3QOWBk=";
 
   doCheck = false; # tries to resolve DNS
 
diff --git a/pkgs/tools/networking/swagger-codegen/default.nix b/pkgs/tools/networking/swagger-codegen/default.nix
index e8f6364de85e9..545f21a796a26 100644
--- a/pkgs/tools/networking/swagger-codegen/default.nix
+++ b/pkgs/tools/networking/swagger-codegen/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl, jre, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  version = "2.4.19";
+  version = "2.4.31";
   pname = "swagger-codegen";
 
   jarfilename = "${pname}-cli-${version}.jar";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://maven/io/swagger/${pname}-cli/${version}/${jarfilename}";
-    sha256 = "04wl5k8k1ziqz7k5w0g7i6zdfn41pbh3k0m8vq434k1886inf8yn";
+    sha256 = "sha256-WEjvyHHKR2w0P0LuDdCtW9GbOLZnCa7oXzLAad9KWN8=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/tools/networking/udpreplay/default.nix b/pkgs/tools/networking/udpreplay/default.nix
index 2e91e884e6f28..73bbe79334998 100644
--- a/pkgs/tools/networking/udpreplay/default.nix
+++ b/pkgs/tools/networking/udpreplay/default.nix
@@ -1,14 +1,14 @@
 { stdenv, cmake, libpcap, fetchFromGitHub, lib }:
 stdenv.mkDerivation rec {
   pname = "updreplay";
-  version = "1.0.0";
+  version = "1.1.0";
   nativeBuildInputs = [ cmake ];
   buildInputs = [ libpcap ];
   src = fetchFromGitHub {
     owner = "rigtorp";
     repo = "udpreplay";
     rev = "v${version}";
-    hash = "sha256-8cp1RyVBnq3vx2LPkAx7ktmdLo0bSq9UWlbb/DrJxpc=";
+    hash = "sha256-kF9a3pjQbFKf25NKyK7uSq0AAO6JK7QeChLhm9Z3wEA=";
   };
 
   meta = with lib; {
diff --git a/pkgs/tools/networking/unbound/default.nix b/pkgs/tools/networking/unbound/default.nix
index 690cf3d97013b..7e447b4a9be62 100644
--- a/pkgs/tools/networking/unbound/default.nix
+++ b/pkgs/tools/networking/unbound/default.nix
@@ -65,6 +65,8 @@ stdenv.mkDerivation rec {
     ++ lib.optionals withDoH [ libnghttp2 ]
     ++ lib.optionals withPythonModule [ python ];
 
+  enableParallelBuilding = true;
+
   configureFlags = [
     "--with-ssl=${openssl.dev}"
     "--with-libexpat=${expat.dev}"
diff --git a/pkgs/tools/networking/xray/default.nix b/pkgs/tools/networking/xray/default.nix
index 621de22e4c00c..6fbc18e53d906 100644
--- a/pkgs/tools/networking/xray/default.nix
+++ b/pkgs/tools/networking/xray/default.nix
@@ -51,6 +51,7 @@ buildGoModule rec {
 
   postFixup = ''
     wrapProgram $out/bin/xray \
+      --suffix V2RAY_LOCATION_ASSET : $assetsDrv/share/v2ray \
       --suffix XRAY_LOCATION_ASSET : $assetsDrv/share/v2ray
   '';
 
diff --git a/pkgs/tools/networking/zrok/default.nix b/pkgs/tools/networking/zrok/default.nix
new file mode 100644
index 0000000000000..f6d32d9cca993
--- /dev/null
+++ b/pkgs/tools/networking/zrok/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, lib, fetchzip, patchelf }:
+
+stdenv.mkDerivation rec {
+  pname = "zrok";
+  version = "0.3.4";
+
+  src = fetchzip {
+    url = "https://github.com/openziti/zrok/releases/download/v${version}/zrok_${version}_linux_amd64.tar.gz";
+    stripRoot = false;
+    sha256 = "sha256-lfsKOo53DarrczQfFhZED2vmzxIyq/TCPtVZECLMV3U=";
+  };
+
+  installPhase = let
+    interpreter = "$(< \"$NIX_CC/nix-support/dynamic-linker\")";
+  in ''
+    mkdir -p $out/bin
+    cp zrok $out/bin/
+    chmod +x $out/bin/zrok
+    patchelf --set-interpreter "${interpreter}" "$out/bin/zrok"
+  '';
+
+  meta = {
+    description = "Geo-scale, next-generation sharing platform built on top of OpenZiti";
+    homepage = "https://zrok.io";
+    maintainers = [ lib.maintainers.bandresen ];
+    platforms = [ "x86_64-linux" ];
+    sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
+    license = lib.licenses.apsl20;
+  };
+
+}
diff --git a/pkgs/tools/package-management/comma/default.nix b/pkgs/tools/package-management/comma/default.nix
index 3007a02c3d190..7b04161938914 100644
--- a/pkgs/tools/package-management/comma/default.nix
+++ b/pkgs/tools/package-management/comma/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "comma";
-  version = "1.5.0";
+  version = "1.6.0";
 
   src = fetchFromGitHub {
     owner = "nix-community";
     repo = "comma";
     rev = "v${version}";
-    hash = "sha256-OonKO7D6xuNf9S6SvxWYzZXNOfoUw5ZEymfC5UmZT7Y=";
+    hash = "sha256-5HNH/Lqj8OU/piH3tvPRkINXHHkt6bRp0QYYR4xOybE=";
   };
 
-  cargoHash = "sha256-q6MbaKrGkwvKWSfL7bQjf9+RdcgKpKj3iXJtSz3FnMc=";
+  cargoHash = "sha256-4Epy5ZPyitRVTHEFVlRo66GvxJVBddlOII/7yqjuK9k=";
 
   nativeBuildInputs = [ makeBinaryWrapper ];
 
diff --git a/pkgs/tools/package-management/micromamba/default.nix b/pkgs/tools/package-management/micromamba/default.nix
index e79bfc889dcfa..5844044dc337e 100644
--- a/pkgs/tools/package-management/micromamba/default.nix
+++ b/pkgs/tools/package-management/micromamba/default.nix
@@ -16,7 +16,6 @@
 , spdlog
 , termcolor
 , tl-expected
-, fmt_9
 }:
 
 let
@@ -34,20 +33,6 @@ let
       })
     ];
   });
-
-  spdlog' = spdlog.overrideAttrs (oldAttrs: {
-    # Use as header-only library.
-    #
-    # Spdlog 1.11 requires fmt version 8 while micromamba requires
-    # version 9. spdlog may use its bundled version of fmt,
-    # though. Micromamba is not calling spdlog functions with
-    # fmt-types in their signature. I.e. we get away with removing
-    # fmt_8 from spdlog's propagated dependencies and using fmt_9 for
-    # micromamba itself.
-    dontBuild = true;
-    cmakeFlags = oldAttrs.cmakeFlags ++ [ "-DSPDLOG_FMT_EXTERNAL=OFF" ];
-    propagatedBuildInputs = [];
-  });
 in
 stdenv.mkDerivation rec {
   pname = "micromamba";
@@ -71,12 +56,11 @@ stdenv.mkDerivation rec {
     yaml-cpp
     libsolv'
     reproc
-    spdlog'
+    spdlog
     termcolor
     ghc_filesystem
     python3
     tl-expected
-    fmt_9
   ];
 
   cmakeFlags = [
diff --git a/pkgs/tools/package-management/nfpm/default.nix b/pkgs/tools/package-management/nfpm/default.nix
index 9cb9eec954297..23582a2c68734 100644
--- a/pkgs/tools/package-management/nfpm/default.nix
+++ b/pkgs/tools/package-management/nfpm/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "nfpm";
-  version = "2.27.1";
+  version = "2.28.0";
 
   src = fetchFromGitHub {
     owner = "goreleaser";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-77E8TXTzU37/V1VmfwUjt/4MiFOrNG+sOHch/brb8bY=";
+    sha256 = "sha256-KF/R0DearjiBtgmqM1NQxD8LKLNkly23t8CLDxkfqbk=";
   };
 
-  vendorHash = "sha256-+Ph0QpDnucf6brWFP05x+s5fCHijaXA7rO1hbesU1Sk=";
+  vendorHash = "sha256-IcV/kXXvs/680zaeS/IQyW2aLTq1O73DEP+32cKXWnU=";
 
   ldflags = [ "-s" "-w" "-X main.version=${version}" ];
 
diff --git a/pkgs/tools/package-management/nixpkgs-review/default.nix b/pkgs/tools/package-management/nixpkgs-review/default.nix
index a864f02ea4fa0..55e2a30785938 100644
--- a/pkgs/tools/package-management/nixpkgs-review/default.nix
+++ b/pkgs/tools/package-management/nixpkgs-review/default.nix
@@ -14,13 +14,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "nixpkgs-review";
-  version = "2.9.0";
+  version = "2.9.1";
 
   src = fetchFromGitHub {
     owner = "Mic92";
     repo = "nixpkgs-review";
     rev = version;
-    sha256 = "sha256-SNAroKkPXiX5baGPRYnzqiVwPwko/Uari/tvjIU7/4k=";
+    sha256 = "sha256-9fdoTKaYfqsAXysRwgLq44UrmOGlr5rjF5Ge93PcHDk=";
   };
 
   makeWrapperArgs =
diff --git a/pkgs/tools/package-management/pkg/default.nix b/pkgs/tools/package-management/pkg/default.nix
index 232e3e5add2bf..5a67e00363b81 100644
--- a/pkgs/tools/package-management/pkg/default.nix
+++ b/pkgs/tools/package-management/pkg/default.nix
@@ -1,23 +1,23 @@
 { lib, stdenv, fetchFromGitHub, m4, pkg-config, tcl
-, bzip2, libarchive, libbsd, xz, openssl, zlib
+, bzip2, elfutils, libarchive, libbsd, xz, openssl, zlib
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "pkg";
-  version = "1.19.0";
+  version = "1.19.1";
 
   src = fetchFromGitHub {
     owner = "freebsd";
     repo = "pkg";
     rev = finalAttrs.version;
-    sha256 = "W66g8kVvaPJSyOZcgyDcUBrWQQ5YDkRqofSWfIsjd+k=";
+    sha256 = "WHR2evPn4Y0wzGwVUEuYPrDDnuPSsYHr4xIofAHeTJk=";
   };
 
   setOutputFlags = false;
   separateDebugInfo = true;
 
   nativeBuildInputs = [ m4 pkg-config tcl ];
-  buildInputs = [ bzip2 libarchive xz openssl zlib ]
+  buildInputs = [ bzip2 elfutils libarchive openssl xz zlib ]
     ++ lib.optional stdenv.isLinux libbsd;
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/security/age-plugin-yubikey/default.nix b/pkgs/tools/security/age-plugin-yubikey/default.nix
index 2a7701ed9e3f0..7a3364c8420b6 100644
--- a/pkgs/tools/security/age-plugin-yubikey/default.nix
+++ b/pkgs/tools/security/age-plugin-yubikey/default.nix
@@ -3,38 +3,45 @@
 , rustPlatform
 , fetchFromGitHub
 , pkg-config
+, openssl
 , pcsclite
 , PCSC
 , Foundation
+, IOKit
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "age-plugin-yubikey";
-  version = "0.3.3";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "str4d";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-b7/65mfUr4p8tP4uU/BFonW0DqTTMIhEgB2xIwIxQVg=";
+    hash = "sha256-V3NzZyCfslUBsARO5UC8N+cuptLxg2euM87DGqtLpPk=";
   };
 
-  cargoSha256 = "sha256-LnHpinNZZHrIEWrVW0t1ja5WN57/fmiSmZlB0ylau8Y=";
+  cargoHash = "sha256-5qmwCcrhDkJlyeTS+waMiTxro1HjMHiQE5Ds/4sVpx4=";
 
-  nativeBuildInputs = lib.optionals stdenv.isLinux [ pkg-config ];
+  nativeBuildInputs = [
+    pkg-config
+  ];
 
-  buildInputs =
-    if stdenv.isDarwin then [
-      Foundation
-      PCSC
-    ] else [
-      pcsclite
-    ];
+  buildInputs = [
+    openssl
+  ]
+  ++ lib.optional stdenv.isLinux pcsclite
+  ++ lib.optionals stdenv.isDarwin [
+    IOKit
+    Foundation
+    PCSC
+  ];
 
   meta = with lib; {
-    description = "YubiKey plugin for age clients";
+    description = "YubiKey plugin for age";
     homepage = "https://github.com/str4d/age-plugin-yubikey";
-    license = with licenses; [ asl20 mit ];
-    maintainers = with maintainers; [ vtuan10 ];
+    changelog = "https://github.com/str4d/age-plugin-yubikey/blob/${src.rev}/CHANGELOG.md";
+    license = with licenses; [ mit asl20 ];
+    maintainers = with maintainers; [ kranzes vtuan10 ];
   };
 }
diff --git a/pkgs/tools/security/alterx/default.nix b/pkgs/tools/security/alterx/default.nix
new file mode 100644
index 0000000000000..88f9f52f42146
--- /dev/null
+++ b/pkgs/tools/security/alterx/default.nix
@@ -0,0 +1,26 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "alterx";
+  version = "0.0.1";
+
+  src = fetchFromGitHub {
+    owner = "projectdiscovery";
+    repo = "alterx";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-F60nEkHmmhlRuHI2Hc3no2RvILhVN2oPXgwxpTdPDYM=";
+  };
+
+  vendorHash = "sha256-tIXSkNJbbT6X23WCUnB+c0FbxJdV3RF1iOrEJxETeaE=";
+
+  meta = with lib; {
+    description = "Fast and customizable subdomain wordlist generator using DSL";
+    homepage = "https://github.com/projectdiscovery/alterx";
+    changelog = "https://github.com/projectdiscovery/alterx/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/tools/security/browserpass/default.nix b/pkgs/tools/security/browserpass/default.nix
index 31a0bd63db032..83f34e2f066f5 100644
--- a/pkgs/tools/security/browserpass/default.nix
+++ b/pkgs/tools/security/browserpass/default.nix
@@ -1,4 +1,11 @@
-{ lib, buildGoModule, fetchFromGitHub, makeWrapper, gnupg }:
+{ lib
+, stdenv
+, buildGoModule
+, fetchFromGitHub
+, gnupg
+, makeWrapper
+}:
+
 buildGoModule rec {
   pname = "browserpass";
   version = "3.1.0";
@@ -14,7 +21,7 @@ buildGoModule rec {
 
   vendorHash = "sha256-CjuH4ANP2bJDeA+o+1j+obbtk5/NVLet/OFS3Rms4r0=";
 
-  doCheck = false;
+  doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform;
 
   postPatch = ''
     # Because this Makefile will be installed to be used by the user, patch
@@ -32,9 +39,11 @@ buildGoModule rec {
   '';
 
   buildPhase = ''
-    make
+    make browserpass
   '';
 
+  checkTarget = "test";
+
   installPhase = ''
     make install
 
diff --git a/pkgs/tools/security/cariddi/default.nix b/pkgs/tools/security/cariddi/default.nix
index bc99a499b70f3..8498cb01c57ff 100644
--- a/pkgs/tools/security/cariddi/default.nix
+++ b/pkgs/tools/security/cariddi/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "cariddi";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "edoardottt";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-pO1FXlkaQveDIfMSWiLB9QvVxmFJixc/HHcEuhg5KmY=";
+    hash = "sha256-zz9p35Wk5jwp5Cn4+FgJCwG2KKgBuOQsH4lJeAVhpCM=";
   };
 
-  vendorHash = "sha256-zDKByBISZNRb4sMCrHKGlp4EBtifBfj92tygcaBH/Fc=";
+  vendorHash = "sha256-s6aEq3LzCj9xzieLD1aC69KV3aeav+bQ5VUZ3TbFetw=";
 
   meta = with lib; {
     description = "Crawler for URLs and endpoints";
diff --git a/pkgs/tools/security/cosign/default.nix b/pkgs/tools/security/cosign/default.nix
index 2fcde94f90038..5997d5eb33cde 100644
--- a/pkgs/tools/security/cosign/default.nix
+++ b/pkgs/tools/security/cosign/default.nix
@@ -13,13 +13,13 @@
 }:
 buildGoModule rec {
   pname = "cosign";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "sigstore";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-919oxYi4e56EhSBN0FdcEZBA430owaDnKHkgTneScXw=";
+    hash = "sha256-x03I86WJT+dLToeGzIaPrLJK0G7siVZuJHjE1WjZao0=";
   };
 
   buildInputs =
@@ -28,7 +28,7 @@ buildGoModule rec {
 
   nativeBuildInputs = [ pkg-config installShellFiles ];
 
-  vendorSha256 = "sha256-DtFywktiGHlsdOFVpKUtKLYXJYwQYy1VISfUYVXlOG8=";
+  vendorHash = "sha256-eTyFIuq9G9/0t5ePZNsBpKJ/lcUU0ryqzg6i+nqbHc4=";
 
   subPackages = [
     "cmd/cosign"
diff --git a/pkgs/tools/security/exploitdb/default.nix b/pkgs/tools/security/exploitdb/default.nix
index 2ae5262e97dc0..232fd259e4114 100644
--- a/pkgs/tools/security/exploitdb/default.nix
+++ b/pkgs/tools/security/exploitdb/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "exploitdb";
-  version = "2023-04-01";
+  version = "2023-04-11";
 
   src = fetchFromGitLab {
     owner = "exploit-database";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-9cH1zJd3r6unnJMnnpLGZZ82FGafRpiBq0rECH//PPc=";
+    hash = "sha256-LGC8AK6e0zhl7jOTSirwv7ZSfVveqNRhM/+afcMmnHU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/security/feroxbuster/default.nix b/pkgs/tools/security/feroxbuster/default.nix
index bc927a522aa75..8667064e153da 100644
--- a/pkgs/tools/security/feroxbuster/default.nix
+++ b/pkgs/tools/security/feroxbuster/default.nix
@@ -9,13 +9,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "feroxbuster";
-  version = "2.9.2";
+  version = "2.9.3";
 
   src = fetchFromGitHub {
     owner = "epi052";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-HSZqqZngXs5ACsk9xzaqBWK5mUxPyGx3qJOtTURXPgg=";
+    hash = "sha256-Z97CAfGnNTQmJd2zMlvGfk5jW9zHAB/efqYoYgVRfMc=";
   };
 
   # disable linker overrides on aarch64-linux
@@ -23,7 +23,7 @@ rustPlatform.buildRustPackage rec {
     rm .cargo/config
   '';
 
-  cargoHash = "sha256-pisMqSgW6uPlBXgTUqJBJya84dRmbOJbEYYezuut6Wo=";
+  cargoHash = "sha256-siLyPPSTBaZ4vpfzeKVlrqIdFMI5z3hRA8c2lRsBAGM=";
 
   OPENSSL_NO_VENDOR = true;
 
diff --git a/pkgs/tools/security/fprintd/default.nix b/pkgs/tools/security/fprintd/default.nix
index 76b71e24aca60..472334f4a6ffe 100644
--- a/pkgs/tools/security/fprintd/default.nix
+++ b/pkgs/tools/security/fprintd/default.nix
@@ -98,6 +98,13 @@ stdenv.mkDerivation rec {
     patchShebangs \
       po/check-translations.sh \
       tests/unittest_inspector.py
+
+    # Stop tests from failing due to unhandled GTasks uncovered by GLib 2.76 bump.
+    # https://gitlab.freedesktop.org/libfprint/fprintd/-/issues/151
+    substituteInPlace tests/fprintd.py \
+      --replace "env['G_DEBUG'] = 'fatal-criticals'" ""
+    substituteInPlace tests/meson.build \
+      --replace "'G_DEBUG=fatal-criticals'," ""
   '';
 
   meta = with lib; {
diff --git a/pkgs/tools/security/grype/default.nix b/pkgs/tools/security/grype/default.nix
index 6790d75eb1bf2..097899555a4ba 100644
--- a/pkgs/tools/security/grype/default.nix
+++ b/pkgs/tools/security/grype/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "grype";
-  version = "0.60.0";
+  version = "0.61.0";
 
   src = fetchFromGitHub {
     owner = "anchore";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-CKaUNv4ymLksZ9zpI8jD4lC0keNNNSpUADSTo3evoIo=";
+    hash = "sha256-PPCeEhV4+iSGDBUIN89wlEUEX20bkcX3B7LxU7JDZQc=";
     # populate values that require us to use git. By doing this in postFetch we
     # can delete .git afterwards and maintain better reproducibility of the src.
     leaveDotGit = true;
@@ -28,7 +28,7 @@ buildGoModule rec {
 
   proxyVendor = true;
 
-  vendorHash = "sha256-2zZlURnArgHK/zfIxHoWn5W6mfd5T7CbAlSqDnal1Mw=";
+  vendorHash = "sha256-L77tzgcshTNAvg6fKkgN6zdDws76wWoJvygAdArscVI=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/tools/security/iaito/default.nix b/pkgs/tools/security/iaito/default.nix
index 4e7567d45fdac..a33db947ac9fc 100644
--- a/pkgs/tools/security/iaito/default.nix
+++ b/pkgs/tools/security/iaito/default.nix
@@ -13,14 +13,14 @@
 
 stdenv.mkDerivation rec {
   pname = "iaito";
-  version = "5.8.2";
+  version = "5.8.4";
 
   srcs = [
     (fetchFromGitHub rec {
       owner = "radareorg";
       repo = "iaito";
       rev = version;
-      hash = "sha256-6Do06u9axqH+DpGASEce8j3iGlrkIZGv50seyazOo1w=";
+      hash = "sha256-pt2vq+JN+Ccv+9o8s2y87xTVeQp2WJ0UfKdoWGsBkUI=";
       name = repo;
     })
     (fetchFromGitHub rec {
diff --git a/pkgs/tools/security/kstart/default.nix b/pkgs/tools/security/kstart/default.nix
new file mode 100644
index 0000000000000..88ccc960bc9f4
--- /dev/null
+++ b/pkgs/tools/security/kstart/default.nix
@@ -0,0 +1,60 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoreconfHook
+, keyutils
+, libkrb5
+, openafs
+, perl
+, pkg-config
+, enableSetPAG ? false
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "kstart";
+  version = "4.3";
+
+  src = fetchFromGitHub {
+    owner = "rra";
+    repo = "kstart";
+    rev = "release/${finalAttrs.version}";
+    hash = "sha256-MGWL4oNc0MZTGWqBEt2wRTkqoagiUTDrS0kz4ewbZZA=";
+  };
+
+  nativeBuildInputs = [
+    autoreconfHook
+    perl
+    pkg-config
+  ];
+
+  buildInputs = [
+    keyutils
+    libkrb5
+    openafs
+  ];
+
+  configureFlags = [
+    "--enable-silent-rules"
+  ]
+  ++ (lib.optional enableSetPAG "--enable-setpag");
+
+  preBuild = ''
+    for f in k5start krenew; do
+      pod2man --release="${finalAttrs.version}" --center="kstart" docs/"$f".pod >docs/"$f".1
+    done
+  '';
+
+  doCheck = true;
+  preCheck = ''
+    patchShebangs tests
+  '';
+
+  outputs = [ "out" "man" ];
+
+  meta = with lib; {
+    outputsToInstall = [ "out" "man" ];
+    description = "Modified version of kerberos tools that support automatic ticket refresh";
+    license = licenses.mit;
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+})
diff --git a/pkgs/tools/security/kubernetes-polaris/default.nix b/pkgs/tools/security/kubernetes-polaris/default.nix
index 26180e219f228..0b24ee043b92d 100644
--- a/pkgs/tools/security/kubernetes-polaris/default.nix
+++ b/pkgs/tools/security/kubernetes-polaris/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kubernetes-polaris";
-  version = "7.3.2";
+  version = "7.4.1";
 
   src = fetchFromGitHub {
     owner = "FairwindsOps";
     repo = "polaris";
     rev = version;
-    sha256 = "sha256-LteclhYNMFNuGjFSuhPuY9ZA1Vlq4DPdcCGAQaujwh8=";
+    sha256 = "sha256-PXyJpzmGTwSthaN0nVex8B7WpCxX7QxqRDoIJERSK6o=";
   };
 
-  vendorSha256 = "sha256-3htwwRkUOf8jLyLfRlhcWhftBImmcUglc/PP/Yk2oF0=";
+  vendorHash = "sha256-SwHJRw75pP1zwi9ZMfUfcXt788pURM1KSbTNQF6XVqk=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/security/kubescape/default.nix b/pkgs/tools/security/kubescape/default.nix
index b8994acdf1735..63d829caccd74 100644
--- a/pkgs/tools/security/kubescape/default.nix
+++ b/pkgs/tools/security/kubescape/default.nix
@@ -6,17 +6,17 @@
 
 buildGoModule rec {
   pname = "kubescape";
-  version = "2.2.5";
+  version = "2.2.6";
 
   src = fetchFromGitHub {
     owner = "kubescape";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-J3E41xQxI53iRfo5E+DMXD70sSCBO3TpSm3qZmpxvW8=";
+    hash = "sha256-tXfjbE4C08YWgLJlZHjagAP3upqCpaOgwSegovVSFCI=";
     fetchSubmodules = true;
   };
 
-  vendorHash = "sha256-KoAuM1H9FRcPLD0AipnXOCUiNHcCWnek4sV0ztu5SyI=";
+  vendorHash = "sha256-bZPM8PCn0+W7Sf/+lQ3ASeqxFSZi49r32rjvQdD7Bvc=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/tools/security/metasploit/Gemfile b/pkgs/tools/security/metasploit/Gemfile
index b1638429d89ed..39ffb001b8615 100644
--- a/pkgs/tools/security/metasploit/Gemfile
+++ b/pkgs/tools/security/metasploit/Gemfile
@@ -1,4 +1,4 @@
 # frozen_string_literal: true
 source "https://rubygems.org"
 
-gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.3.9"
+gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.3.11"
diff --git a/pkgs/tools/security/metasploit/Gemfile.lock b/pkgs/tools/security/metasploit/Gemfile.lock
index a5b43186df9dc..46c90139da2c6 100644
--- a/pkgs/tools/security/metasploit/Gemfile.lock
+++ b/pkgs/tools/security/metasploit/Gemfile.lock
@@ -1,9 +1,9 @@
 GIT
   remote: https://github.com/rapid7/metasploit-framework
-  revision: ac52413f9d1f10fc15bb8308fc6735813b84f623
-  ref: refs/tags/6.3.9
+  revision: e9260dd4f856af83dd3827254576a4b01a8702ae
+  ref: refs/tags/6.3.11
   specs:
-    metasploit-framework (6.3.9)
+    metasploit-framework (6.3.11)
       actionpack (~> 7.0)
       activerecord (~> 7.0)
       activesupport (~> 7.0)
@@ -123,19 +123,19 @@ GEM
       i18n (>= 1.6, < 2)
       minitest (>= 5.1)
       tzinfo (~> 2.0)
-    addressable (2.8.1)
+    addressable (2.8.4)
       public_suffix (>= 2.0.2, < 6.0)
     afm (0.2.2)
     arel-helpers (2.14.0)
       activerecord (>= 3.1.0, < 8)
     aws-eventstream (1.2.0)
-    aws-partitions (1.735.0)
+    aws-partitions (1.744.0)
     aws-sdk-core (3.171.0)
       aws-eventstream (~> 1, >= 1.0.2)
       aws-partitions (~> 1, >= 1.651.0)
       aws-sigv4 (~> 1.5)
       jmespath (~> 1, >= 1.6.1)
-    aws-sdk-ec2 (1.371.0)
+    aws-sdk-ec2 (1.375.0)
       aws-sdk-core (~> 3, >= 3.165.0)
       aws-sigv4 (~> 1.1)
     aws-sdk-iam (1.77.0)
@@ -144,7 +144,7 @@ GEM
     aws-sdk-kms (1.63.0)
       aws-sdk-core (~> 3, >= 3.165.0)
       aws-sigv4 (~> 1.1)
-    aws-sdk-s3 (1.119.2)
+    aws-sdk-s3 (1.120.1)
       aws-sdk-core (~> 3, >= 3.165.0)
       aws-sdk-kms (~> 1)
       aws-sigv4 (~> 1.4)
@@ -160,8 +160,8 @@ GEM
     cookiejar (0.3.3)
     crass (1.0.6)
     daemons (1.4.1)
-    dnsruby (1.61.9)
-      simpleidn (~> 0.1)
+    dnsruby (1.70.0)
+      simpleidn (~> 0.2.1)
     domain_name (0.5.20190701)
       unf (>= 0.0.5, < 1.0.0)
     ed25519 (1.3.0)
@@ -183,7 +183,7 @@ GEM
     faraday-net_http (3.0.2)
     faraday-retry (2.1.0)
       faraday (~> 2.0)
-    faye-websocket (0.11.1)
+    faye-websocket (0.11.2)
       eventmachine (>= 0.12.0)
       websocket-driver (>= 0.5.1)
     ffi (1.15.5)
@@ -205,7 +205,7 @@ GEM
     i18n (1.12.0)
       concurrent-ruby (~> 1.0)
     io-console (0.6.0)
-    irb (1.6.3)
+    irb (1.6.4)
       reline (>= 0.3.0)
     jmespath (1.6.2)
     jsobfu (0.4.2)
@@ -215,7 +215,7 @@ GEM
     logging (2.3.1)
       little-plugger (~> 1.1)
       multi_json (~> 1.14)
-    loofah (2.19.1)
+    loofah (2.20.0)
       crass (~> 1.0.2)
       nokogiri (>= 1.5.9)
     metasm (1.0.5)
@@ -224,7 +224,7 @@ GEM
       activesupport (~> 7.0)
       railties (~> 7.0)
       zeitwerk
-    metasploit-credential (6.0.2)
+    metasploit-credential (6.0.4)
       metasploit-concern
       metasploit-model
       metasploit_data_models (>= 5.0.0)
@@ -254,12 +254,12 @@ GEM
     mini_portile2 (2.8.1)
     minitest (5.18.0)
     mqtt (0.6.0)
-    msgpack (1.6.1)
+    msgpack (1.7.0)
     multi_json (1.15.0)
     mustermann (3.0.0)
       ruby2_keywords (~> 0.0.1)
     nessus_rest (0.1.6)
-    net-ldap (0.17.1)
+    net-ldap (0.18.0)
     net-protocol (0.2.1)
       timeout
     net-smtp (0.3.3)
@@ -267,8 +267,8 @@ GEM
     net-ssh (7.1.0)
     network_interface (0.0.2)
     nexpose (7.3.0)
-    nio4r (2.5.8)
-    nokogiri (1.14.2)
+    nio4r (2.5.9)
+    nokogiri (1.14.3)
       mini_portile2 (~> 2.8.0)
       racc (~> 1.4)
     nori (2.6.0)
@@ -290,11 +290,11 @@ GEM
       ttfunk
     pg (1.4.6)
     public_suffix (5.0.1)
-    puma (6.1.1)
+    puma (6.2.1)
       nio4r (~> 2.0)
     racc (1.6.2)
     rack (2.2.6.4)
-    rack-protection (3.0.5)
+    rack-protection (3.0.6)
       rack
     rack-test (2.1.0)
       rack (>= 1.3)
@@ -317,7 +317,7 @@ GEM
     recog (3.1.1)
       nokogiri
     redcarpet (3.6.0)
-    reline (0.3.2)
+    reline (0.3.3)
       io-console (~> 0.5)
     rex-arch (0.1.14)
       rex-text
@@ -385,17 +385,17 @@ GEM
       faraday (>= 0.17.3, < 3)
     simpleidn (0.2.1)
       unf (~> 0.1.4)
-    sinatra (3.0.5)
+    sinatra (3.0.6)
       mustermann (~> 3.0)
       rack (~> 2.2, >= 2.2.4)
-      rack-protection (= 3.0.5)
+      rack-protection (= 3.0.6)
       tilt (~> 2.0)
-    sqlite3 (1.6.1)
+    sqlite3 (1.6.2)
       mini_portile2 (~> 2.8.0)
     sshkey (2.0.0)
     strptime (0.2.5)
     swagger-blocks (3.0.0)
-    thin (1.8.1)
+    thin (1.8.2)
       daemons (~> 1.0, >= 1.0.9)
       eventmachine (~> 1.0, >= 1.0.4)
       rack (>= 1, < 3)
@@ -405,12 +405,12 @@ GEM
     ttfunk (1.7.0)
     tzinfo (2.0.6)
       concurrent-ruby (~> 1.0)
-    tzinfo-data (1.2023.2)
+    tzinfo-data (1.2023.3)
       tzinfo (>= 1.0.0)
     unf (0.1.4)
       unf_ext
     unf_ext (0.0.8.2)
-    unix-crypt (1.3.0)
+    unix-crypt (1.3.1)
     warden (1.2.9)
       rack (>= 2.0.9)
     webrick (1.8.1)
@@ -442,4 +442,4 @@ DEPENDENCIES
   metasploit-framework!
 
 BUNDLED WITH
-   2.4.6
+   2.4.8
diff --git a/pkgs/tools/security/metasploit/default.nix b/pkgs/tools/security/metasploit/default.nix
index 8cf8f9602570f..6b9e3f6398330 100644
--- a/pkgs/tools/security/metasploit/default.nix
+++ b/pkgs/tools/security/metasploit/default.nix
@@ -15,13 +15,13 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "metasploit-framework";
-  version = "6.3.9";
+  version = "6.3.11";
 
   src = fetchFromGitHub {
     owner = "rapid7";
     repo = "metasploit-framework";
     rev = version;
-    sha256 = "sha256-XngExMOJuPYDaOEwqCa9b25yVY+x+nXMugDAuIA/TMQ=";
+    sha256 = "sha256-4cpzsSlvwKQAOsokCwMHiVeJ+puvykved1b7JXtc8co=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/security/metasploit/gemset.nix b/pkgs/tools/security/metasploit/gemset.nix
index 01bde451615cd..ecbc98213d129 100644
--- a/pkgs/tools/security/metasploit/gemset.nix
+++ b/pkgs/tools/security/metasploit/gemset.nix
@@ -54,10 +54,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ypdmpdn20hxp5vwxz3zc04r5xcwqc25qszdlg41h8ghdqbllwmw";
+      sha256 = "15s8van7r2ad3dq6i03l3z4hqnvxcq75a3h72kxvf9an53sqma20";
       type = "gem";
     };
-    version = "2.8.1";
+    version = "2.8.4";
   };
   afm = {
     groups = ["default"];
@@ -104,10 +104,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "037avf47v67zfc0g7nzax57in14s37kn1vzmarj09lmhhprxs9al";
+      sha256 = "15ml875lniq2rn8q0r7ykcnl8xx80h00ihkdcy3cb4bjd8fw41m9";
       type = "gem";
     };
-    version = "1.735.0";
+    version = "1.744.0";
   };
   aws-sdk-core = {
     groups = ["default"];
@@ -124,10 +124,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0h54v3ixwz6fh2j4z76vka4l8km71lk5jxfmay4lik6lf69z4l4i";
+      sha256 = "1zj67jzg81nr3da2mwh27b22ps2waz41fhvc2f2khdfjazi7knqv";
       type = "gem";
     };
-    version = "1.371.0";
+    version = "1.375.0";
   };
   aws-sdk-iam = {
     groups = ["default"];
@@ -154,10 +154,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1100ir42jf60rf7kffgq16070g0sqg52pcwwnvy2113c8qk5zlkz";
+      sha256 = "1mapdzm97rv22pca1hvvshwsafa12gd2yv2fcy63dfjn5vjjq893";
       type = "gem";
     };
-    version = "1.119.2";
+    version = "1.120.1";
   };
   aws-sigv4 = {
     groups = ["default"];
@@ -274,10 +274,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0v8jfxamsdvs8rdl28ylcp5xphb03kmf5f1aqrnr2020ras618kc";
+      sha256 = "17bjlic4ac9980vas3pgnhi5lkisq28vd730bhcg8jdh8xcp6r48";
       type = "gem";
     };
-    version = "1.61.9";
+    version = "1.70.0";
   };
   domain_name = {
     groups = ["default"];
@@ -384,10 +384,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "14lrb065xc4mny9faf91357r8s91qsbi7zfzsfqlj202b8hsgqf8";
+      sha256 = "1p4hsz3v75lxyj3ymwjm7pxrrk1997n54lfm51h5laakzxbji421";
       type = "gem";
     };
-    version = "0.11.1";
+    version = "0.11.2";
   };
   ffi = {
     groups = ["default"];
@@ -514,10 +514,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1h9s07n5v3z029v18924ws9vdkdc80n6llp9ccx77yg1krv2g0f3";
+      sha256 = "04j4qaj3siaddjz5y310dh54zxsp50x68cshl51fiwayi7khw556";
       type = "gem";
     };
-    version = "1.6.3";
+    version = "1.6.4";
   };
   jmespath = {
     groups = ["default"];
@@ -574,10 +574,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08qhzck271anrx9y6qa6mh8hwwdzsgwld8q0000rcd7yvvpnjr3c";
+      sha256 = "1mi4ia13fisc97fzd8xcd9wkjdki7zfbmdn1xkdzplicir68gyp8";
       type = "gem";
     };
-    version = "2.19.1";
+    version = "2.20.0";
   };
   metasm = {
     groups = ["default"];
@@ -604,22 +604,22 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ik61iv34a0nfszrb3aq9ia63n6hv1vgjgy6kdkl8xy7i455kyss";
+      sha256 = "00ij97jn1vbh66jcl1dbva1lf7a5gc4sdcg46jphgm1zghgsi5hp";
       type = "gem";
     };
-    version = "6.0.2";
+    version = "6.0.4";
   };
   metasploit-framework = {
     groups = ["default"];
     platforms = [];
     source = {
       fetchSubmodules = false;
-      rev = "ac52413f9d1f10fc15bb8308fc6735813b84f623";
-      sha256 = "1i2c7y0bih00pb67bymiixap4vkgplkahc71d01zdf49qg208y2y";
+      rev = "e9260dd4f856af83dd3827254576a4b01a8702ae";
+      sha256 = "1jpibixjbysnfzg4pjmgkgx8jmw90w1hn96a780a9h3g56qp7jp1";
       type = "git";
       url = "https://github.com/rapid7/metasploit-framework";
     };
-    version = "6.3.9";
+    version = "6.3.11";
   };
   metasploit-model = {
     groups = ["default"];
@@ -706,10 +706,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1jr9grsdnlb8wgd9by7mhsc9c1wixijh9an4m4yq1ph0jg26x9rk";
+      sha256 = "172ky0r1jfcm3xyg067pia7k1lhc15vw9svv93max120gcdbrvji";
       type = "gem";
     };
-    version = "1.6.1";
+    version = "1.7.0";
   };
   multi_json = {
     groups = ["default"];
@@ -746,10 +746,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ycw0qsw3hap8svakl0i30jkj0ffd4lpyrn17a1j0w8mz5ainmsj";
+      sha256 = "0xqcffn3c1564c4fizp10dzw2v5g2pabdzrcn25hq05bqhsckbar";
       type = "gem";
     };
-    version = "0.17.1";
+    version = "0.18.0";
   };
   net-protocol = {
     groups = ["default"];
@@ -806,10 +806,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xk64wghkscs6bv2n22853k2nh39d131c6rfpnlw12mbjnnv9v1v";
+      sha256 = "0w9978zwjf1qhy3amkivab0f9syz6a7k0xgydjidaf7xc831d78f";
       type = "gem";
     };
-    version = "2.5.8";
+    version = "2.5.9";
   };
   nokogiri = {
     dependencies = ["mini_portile2" "racc"];
@@ -817,10 +817,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1djq4rp4m967mn6sxmiw75vz24gfp0w602xv22kk1x3cmi5afrf7";
+      sha256 = "0fnw0z8zl8b5k35g9m5hhc1g4s6ajzjinhyxnqjrx7l7p07fw71v";
       type = "gem";
     };
-    version = "1.14.2";
+    version = "1.14.3";
   };
   nori = {
     groups = ["default"];
@@ -937,10 +937,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1j1hx19hh0hhnfcyn075i8rzxxv4vjrny0q1ywzfdbflbwzg7b21";
+      sha256 = "0qqd5lb3mamh53ssx0xavmspg4blhq6hd1kipksw20bq71xcklf5";
       type = "gem";
     };
-    version = "6.1.1";
+    version = "6.2.1";
   };
   racc = {
     groups = ["default"];
@@ -967,10 +967,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1a12m1mv8dc0g90fs1myvis8vsgr427k1arg1q4a9qlfw6fqyhis";
+      sha256 = "1kpm67az1wxlg76h620in2r7agfyhv177ps268j5ggsanzddzih8";
       type = "gem";
     };
-    version = "3.0.5";
+    version = "3.0.6";
   };
   rack-test = {
     groups = ["default"];
@@ -1067,10 +1067,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1vpsmij5mknpiqy4b835rzl87slshm5dkr08hm8wypfya3v4m6cp";
+      sha256 = "0zpz436h6gxyh000bdsm1m53kb5zgl97cfb45rxk2w5z2fgl30f3";
       type = "gem";
     };
-    version = "0.3.2";
+    version = "0.3.3";
   };
   rex-arch = {
     groups = ["default"];
@@ -1357,10 +1357,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ryfja9yd3fq8n1p5yi3qnd0pjk7bkycmxxmbb1bj0axlr1pdv20";
+      sha256 = "1q0ghxfqgjhg2dq9699mn5qx6m6q2cgldg312kh41pzwwy71a7hx";
       type = "gem";
     };
-    version = "3.0.5";
+    version = "3.0.6";
   };
   sqlite3 = {
     dependencies = ["mini_portile2"];
@@ -1368,10 +1368,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "064g96zvvx6rb60jl06dmcc73n16m2d89n7w3hdkh79lgsjszf2l";
+      sha256 = "1i47n6nkyigkyag00yqf9f3nj11bm1lb0ds5nkvkdvm7lxbna5jq";
       type = "gem";
     };
-    version = "1.6.1";
+    version = "1.6.2";
   };
   sshkey = {
     groups = ["default"];
@@ -1408,10 +1408,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "123bh7qlv6shk8bg8cjc84ix8bhlfcilwnn3iy6zq3l57yaplm9l";
+      sha256 = "08g1yq6zzvgndj8fd98ah7pp8g2diw28p8bfjgv7rvjvp8d2am8w";
       type = "gem";
     };
-    version = "1.8.1";
+    version = "1.8.2";
   };
   thor = {
     groups = ["default"];
@@ -1468,10 +1468,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06qzd6jgjfasl55wsia970jpfzfzkqc2g1icxwazc04s66lkznlf";
+      sha256 = "0m2d0gpsgqnv29j5h2d6g57g0rayvd460b8s2vjr8sn46bqf89m5";
       type = "gem";
     };
-    version = "1.2023.2";
+    version = "1.2023.3";
   };
   unf = {
     groups = ["default"];
@@ -1498,10 +1498,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wflipsmmicmgvqilp9pml4x19b337kh6p6jgrzqrzpkq2z52gdq";
+      sha256 = "11p5ij6iasr46fbzz0z3jibaiwf242bq8xwav33rljwcwh85sy5y";
       type = "gem";
     };
-    version = "1.3.0";
+    version = "1.3.1";
   };
   warden = {
     groups = ["default"];
diff --git a/pkgs/tools/security/saml2aws/default.nix b/pkgs/tools/security/saml2aws/default.nix
index 19a1b275028b4..e7dc4954b0e99 100644
--- a/pkgs/tools/security/saml2aws/default.nix
+++ b/pkgs/tools/security/saml2aws/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "saml2aws";
-  version = "2.36.5";
+  version = "2.36.6";
 
   src = fetchFromGitHub {
     owner = "Versent";
     repo = "saml2aws";
     rev = "v${version}";
-    sha256 = "sha256-v5lr0CtKBDNB3Cy9/3mA6E0koQyQvtGe1ET2Mm4EfDc=";
+    sha256 = "sha256-llEdO19TvHzvH4sV1c+1dHqowG2fVLOqMOqCrH6Urws=";
   };
 
   vendorHash = "sha256-MXm1V8GrjZn/x0Q6fW8zJN351zVsPGME4eFg6f8cEX8=";
diff --git a/pkgs/tools/security/sequoia/default.nix b/pkgs/tools/security/sequoia/default.nix
index f7f63f126bedd..497c894481313 100644
--- a/pkgs/tools/security/sequoia/default.nix
+++ b/pkgs/tools/security/sequoia/default.nix
@@ -5,6 +5,7 @@
 , darwin
 , git
 , nettle
+, nix-update-script
 # Use the same llvmPackages version as Rust
 , llvmPackages_12
 , cargo
@@ -26,23 +27,22 @@ rustPlatform.buildRustPackage rec {
   pname = "sequoia";
   # Upstream has separate version numbering for the library and the CLI frontend.
   # This derivation provides the CLI frontend, and thus uses its version number.
-  version = "0.27.0";
+  version = "0.28.0";
 
   src = fetchFromGitLab {
     owner = "sequoia-pgp";
     repo = "sequoia";
     rev = "sq/v${version}";
-    sha256 = "sha256-KhJAXpj47Tvds5SLYwnsNeIlPf9QEopoCzsvvHgCwaI=";
+    hash = "sha256-T7WOYMqyBeVHs+4w8El99t0NTUKqMW1QeAkNGKcaWr0=";
   };
 
-  cargoSha256 = "sha256-Y7iiZVIT9Vbe4YmTfGTU8p3H3odQKms2FBnnWgvF7mI=";
+  cargoHash = "sha256-zaAAEFBumfHU4hGzAOmLvBu3X4J7LAlmexqixHtVPr8=";
 
   patches = [
-    (fetchpatch
-      { url = "https://gitlab.com/sequoia-pgp/sequoia/-/commit/7916f90421ecb9a75e32f0284459bcc9a3fd02b0.patch";
-        sha256 = "sha256-KBBn6XaGzIT0iVzoCYsS0N+OkZzGuWmUmIF2hl49FEI=";
-      }
-    )
+    (fetchpatch {
+      url = "https://gitlab.com/sequoia-pgp/sequoia/-/commit/4dc6e624c2394936dc447f18aedb4a4810bb2ddb.patch";
+      hash = "sha256-T6hh7U1gvKvyn/OCuJBvLM7TG1VFnpvpAiWS72m3P6I=";
+    })
   ];
 
   nativeBuildInputs = [
@@ -103,6 +103,8 @@ rustPlatform.buildRustPackage rec {
   checkPhase = null;
   installPhase = null;
 
+  passthru.updateScript = nix-update-script { };
+
   meta = with lib; {
     description = "A cool new OpenPGP implementation";
     homepage = "https://sequoia-pgp.org/";
diff --git a/pkgs/tools/security/tpm2-abrmd/default.nix b/pkgs/tools/security/tpm2-abrmd/default.nix
index d9dd354aac82c..7183559987949 100644
--- a/pkgs/tools/security/tpm2-abrmd/default.nix
+++ b/pkgs/tools/security/tpm2-abrmd/default.nix
@@ -15,7 +15,14 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-l0ncCMsStaeFACRU3Bt6F1zyiOTGY6wOHewA4AD58Ww=";
   };
 
-  nativeBuildInputs = [ pkg-config makeWrapper autoreconfHook autoconf-archive which ];
+  nativeBuildInputs = [
+    autoconf-archive
+    autoreconfHook
+    glib
+    makeWrapper
+    pkg-config
+    which
+  ];
   buildInputs = [ tpm2-tss glib dbus ];
   nativeCheckInputs = [ cmocka ];
 
diff --git a/pkgs/tools/security/tracee/default.nix b/pkgs/tools/security/tracee/default.nix
index 89a8ba6bcc2f4..eb1e8090b286d 100644
--- a/pkgs/tools/security/tracee/default.nix
+++ b/pkgs/tools/security/tracee/default.nix
@@ -2,7 +2,7 @@
 , buildGoModule
 , fetchFromGitHub
 
-, llvmPackages_13
+, clang
 , pkg-config
 
 , zlib
@@ -14,20 +14,17 @@
 , tracee
 }:
 
-let
-  inherit (llvmPackages_13) clang;
-in
 buildGoModule rec {
   pname = "tracee";
-  version = "0.11.0";
+  version = "0.13.1";
 
   src = fetchFromGitHub {
     owner = "aquasecurity";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-fAbii/DEXx9WJpolc7amqF9TQj4oE5x0TCiNOtVasGo=";
+    hash = "sha256-YO5u/hE5enoqh8niV4Zi+NFUsU+UXCCxdqvxolZImGk=";
   };
-  vendorSha256 = "sha256-eenhIsiJhPLgwJo2spIGURPkcsec3kO4L5UJ0FWniQc=";
+  vendorHash = "sha256-swMvJe+Dz/kwPIStPlQ7d6U/UwXSMcJ3eONxjzebXCc=";
 
   patches = [
     ./use-our-libbpf.patch
@@ -59,15 +56,16 @@ buildGoModule rec {
   # see passthru.tests.integration
   doCheck = false;
 
+  outputs = [ "out" "lib" "share" ];
+
   installPhase = ''
     runHook preInstall
 
-    mkdir -p $out/{bin,share/tracee}
-
-    mv ./dist/tracee-{ebpf,rules} $out/bin/
+    mkdir -p $out/bin $lib/lib/tracee $share/share/tracee
 
-    mv ./dist/rules $out/share/tracee/
-    mv ./cmd/tracee-rules/templates $out/share/tracee/
+    mv ./dist/tracee $out/bin/
+    mv ./dist/tracee.bpf.core.o $lib/lib/tracee/
+    mv ./cmd/tracee-rules/templates $share/share/tracee/
 
     runHook postInstall
   '';
@@ -76,10 +74,8 @@ buildGoModule rec {
   installCheckPhase = ''
     runHook preInstallCheck
 
-    $out/bin/tracee-ebpf --help
-    $out/bin/tracee-ebpf --version | grep "v${version}"
-
-    $out/bin/tracee-rules --help
+    $out/bin/tracee --help
+    $out/bin/tracee --version | grep "v${version}"
 
     runHook postInstallCheck
   '';
@@ -89,7 +85,7 @@ buildGoModule rec {
     version = testers.testVersion {
       package = tracee;
       version = "v${version}";
-      command = "tracee-ebpf --version";
+      command = "tracee --version";
     };
   };
 
@@ -111,6 +107,7 @@ buildGoModule rec {
       gpl2Plus
     ];
     maintainers = with maintainers; [ jk ];
-    platforms = [ "x86_64-linux" ];
+    platforms = [ "x86_64-linux" "aarch64-linux" ];
+    outputsToInstall = [ "out" "share" ];
   };
 }
diff --git a/pkgs/tools/security/tracee/use-our-libbpf.patch b/pkgs/tools/security/tracee/use-our-libbpf.patch
index 562bdb6e09f00..00d91ca6e3b38 100644
--- a/pkgs/tools/security/tracee/use-our-libbpf.patch
+++ b/pkgs/tools/security/tracee/use-our-libbpf.patch
@@ -1,5 +1,5 @@
 diff --git a/Makefile b/Makefile
-index c72cf63d..e96b7eed 100644
+index d7596a1a..dd7b97b6 100644
 --- a/Makefile
 +++ b/Makefile
 @@ -50,6 +50,7 @@ CMD_STATICCHECK ?= staticcheck
@@ -10,18 +10,7 @@ index c72cf63d..e96b7eed 100644
  LIB_ELF ?= libelf
  LIB_ZLIB ?= zlib
  
-@@ -172,10 +173,6 @@ env:
- 	@echo "KERN_BUILD_PATH          $(KERN_BUILD_PATH)"
- 	@echo "KERN_SRC_PATH            $(KERN_SRC_PATH)"
- 	@echo ---------------------------------------
--	@echo "LIBBPF_CFLAGS            $(LIBBPF_CFLAGS)"
--	@echo "LIBBPF_LDLAGS            $(LIBBPF_LDFLAGS)"
--	@echo "LIBBPF_SRC               $(LIBBPF_SRC)"
--	@echo ---------------------------------------
- 	@echo "STATIC                   $(STATIC)"
- 	@echo ---------------------------------------
- 	@echo "BPF_VCPU                 $(BPF_VCPU)"
-@@ -274,8 +271,6 @@ OUTPUT_DIR = ./dist
+@@ -279,8 +280,6 @@ OUTPUT_DIR = ./dist
  $(OUTPUT_DIR):
  #
  	@$(CMD_MKDIR) -p $@
@@ -30,61 +19,7 @@ index c72cf63d..e96b7eed 100644
  
  #
  # embedded btfhub
-@@ -286,37 +281,6 @@ $(OUTPUT_DIR)/btfhub:
- 	@$(CMD_MKDIR) -p $@
- 	@$(CMD_TOUCH) $@/.place-holder # needed for embed.FS
- 
--#
--# libbpf
--#
--
--LIBBPF_CFLAGS = "-fPIC"
--LIBBPF_LDLAGS =
--LIBBPF_SRC = ./3rdparty/libbpf/src
--
--$(OUTPUT_DIR)/libbpf/libbpf.a: \
--	$(LIBBPF_SRC) \
--	$(wildcard $(LIBBPF_SRC)/*.[ch]) \
--	| .checkver_$(CMD_CLANG) $(OUTPUT_DIR)
--#
--	CC="$(CMD_CLANG)" \
--		CFLAGS="$(LIBBPF_CFLAGS)" \
--		LD_FLAGS="$(LIBBPF_LDFLAGS)" \
--		$(MAKE) \
--		-C $(LIBBPF_SRC) \
--		BUILD_STATIC_ONLY=1 \
--		DESTDIR=$(abspath ./$(OUTPUT_DIR)/libbpf/) \
--		OBJDIR=$(abspath ./$(OUTPUT_DIR)/libbpf/obj) \
--		INCLUDEDIR= LIBDIR= UAPIDIR= prefix= libdir= \
--		install install_uapi_headers
--
--$(LIBBPF_SRC): \
--	| .check_$(CMD_GIT)
--#
--ifeq ($(wildcard $@), )
--	@$(CMD_GIT) submodule update --init --recursive
--endif
--
- #
- # non co-re ebpf
- #
-@@ -333,7 +297,6 @@ BPF_NOCORE_TAG = $(subst .,_,$(KERN_RELEASE)).$(subst .,_,$(VERSION))
- bpf-nocore: $(OUTPUT_DIR)/tracee.bpf.$(BPF_NOCORE_TAG).o
- 
- $(OUTPUT_DIR)/tracee.bpf.$(BPF_NOCORE_TAG).o: \
--	$(OUTPUT_DIR)/libbpf/libbpf.a \
- 	$(TRACEE_EBPF_OBJ_SRC)
- #
- 	MAKEFLAGS="--no-print-directory"
-@@ -351,7 +314,6 @@ $(OUTPUT_DIR)/tracee.bpf.$(BPF_NOCORE_TAG).o: \
- 		-I $(KERN_SRC_PATH)/include/uapi \
- 		-I $(KERN_BUILD_PATH)/include/generated \
- 		-I $(KERN_BUILD_PATH)/include/generated/uapi \
--		-I $(OUTPUT_DIR)/libbpf \
- 		-I ./3rdparty/include \
- 		-Wunused \
- 		-Wall \
-@@ -412,7 +374,6 @@ TRACEE_EBPF_OBJ_CORE_HEADERS = $(shell find pkg/ebpf/c -name *.h)
+@@ -418,7 +417,6 @@ TRACEE_EBPF_OBJ_CORE_HEADERS = $(shell find pkg/ebpf/c -name *.h)
  bpf-core: $(OUTPUT_DIR)/tracee.bpf.core.o
  
  $(OUTPUT_DIR)/tracee.bpf.core.o: \
@@ -92,15 +27,7 @@ index c72cf63d..e96b7eed 100644
  	$(TRACEE_EBPF_OBJ_SRC) \
  	$(TRACEE_EBPF_OBJ_CORE_HEADERS)
  #
-@@ -421,7 +382,6 @@ $(OUTPUT_DIR)/tracee.bpf.core.o: \
- 		-D__BPF_TRACING__ \
- 		-DCORE \
- 		-I./pkg/ebpf/c/ \
--		-I$(OUTPUT_DIR)/libbpf/ \
- 		-I ./3rdparty/include \
- 		-target bpf \
- 		-O2 -g \
-@@ -447,8 +407,8 @@ ifeq ($(STATIC), 1)
+@@ -453,8 +451,8 @@ ifeq ($(STATIC), 1)
      GO_TAGS_EBPF := $(GO_TAGS_EBPF),netgo
  endif
  
@@ -111,7 +38,7 @@ index c72cf63d..e96b7eed 100644
  
  GO_ENV_EBPF =
  GO_ENV_EBPF += GOOS=linux
-@@ -468,6 +428,7 @@ $(OUTPUT_DIR)/tracee-ebpf: \
+@@ -474,6 +472,7 @@ $(OUTPUT_DIR)/tracee-ebpf: \
  	$(TRACEE_EBPF_SRC) \
  	./embedded-ebpf.go \
  	| .checkver_$(CMD_GO) \
@@ -119,11 +46,3 @@ index c72cf63d..e96b7eed 100644
  	.checklib_$(LIB_ELF) \
  	.checklib_$(LIB_ZLIB) \
  	btfhub
-@@ -658,7 +619,6 @@ test-rules: \
- .PHONY: test-upstream-libbpfgo
- test-upstream-libbpfgo: \
- 	.checkver_$(CMD_GO) \
--	$(OUTPUT_DIR)/libbpf/libbpf.a
- #
- 	./tests/libbpfgo.sh $(GO_ENV_EBPF)
- 
diff --git a/pkgs/tools/security/trufflehog/default.nix b/pkgs/tools/security/trufflehog/default.nix
index 37ec8cac900d6..0c70353dda8a3 100644
--- a/pkgs/tools/security/trufflehog/default.nix
+++ b/pkgs/tools/security/trufflehog/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "trufflehog";
-  version = "3.31.3";
+  version = "3.31.5";
 
   src = fetchFromGitHub {
     owner = "trufflesecurity";
     repo = "trufflehog";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Ik2zAcjLvsJc1c7WntamruAT3oZqkFK7CabfRQ6BQzA=";
+    hash = "sha256-Q+aCVOeF03UeGPnnXc9lNkhrlL3ECud7KEhYtLzRIj0=";
   };
 
-  vendorHash = "sha256-PNEIuENQfSOTo4W4frx/e56OwphGZGSP6WBLLtQeS4M=";
+  vendorHash = "sha256-mxOfHAaYCrwJT7I18iUHj0rK+MmJ4PX68Ln4cPO8sns=";
 
   # Test cases run git clone and require network access
   doCheck = false;
diff --git a/pkgs/tools/security/vals/default.nix b/pkgs/tools/security/vals/default.nix
index c9fad8b068e35..71252414ade0e 100644
--- a/pkgs/tools/security/vals/default.nix
+++ b/pkgs/tools/security/vals/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "vals";
-  version = "0.23.0";
+  version = "0.24.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "variantdev";
     repo = pname;
-    sha256 = "sha256-YIzy8WPguIrhkg1HW2X714Xp9b+eL6bej/oXN62kyus=";
+    sha256 = "sha256-qUcNwpmWoJkrT4ClW8uq2ufFEgmiZQcDG446SSO6mR0=";
   };
 
-  vendorHash = "sha256-CzfAUNKskEbxWmVGz/XHItUS9Mp12zjTJ3z9X7YBjR4=";
+  vendorHash = "sha256-6DJiqDEgEHQbyIt4iShoBnagBvspd3W3vD56/FGjESs=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/tools/security/vault/default.nix b/pkgs/tools/security/vault/default.nix
index 266ed3f5c8837..42eca27fb5943 100644
--- a/pkgs/tools/security/vault/default.nix
+++ b/pkgs/tools/security/vault/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "vault";
-  version = "1.13.0";
+  version = "1.13.1";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "vault";
     rev = "v${version}";
-    sha256 = "sha256-F9Ki+3jMkJ+CI2yQmrnqT98xJqSSKQTtYHxQTYdfNbQ=";
+    sha256 = "sha256-bYZghlQi2p3XnKWH3H2sehds/XSMW8pbzBophNMa5q4=";
   };
 
-  vendorHash = "sha256-Ny4TTa67x/mwTclZrtPoWU6nHu5q4KafP1s4rvk21Hs=";
+  vendorHash = "sha256-mNnStWxrSR455zGWkj4dLDFk/kdOXYgk8LKB0wy7K5M=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/tools/security/vaultwarden/Cargo.lock b/pkgs/tools/security/vaultwarden/Cargo.lock
index 6c893cad2c6b0..df4b04f8eac79 100644
--- a/pkgs/tools/security/vaultwarden/Cargo.lock
+++ b/pkgs/tools/security/vaultwarden/Cargo.lock
@@ -120,7 +120,7 @@ dependencies = [
  "log",
  "parking",
  "polling",
- "rustix 0.37.3",
+ "rustix",
  "slab",
  "socket2",
  "waker-fn",
@@ -216,7 +216,7 @@ checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -587,9 +587,9 @@ dependencies = [
 
 [[package]]
 name = "cxx"
-version = "1.0.93"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9c00419335c41018365ddf7e4d5f1c12ee3659ddcf3e01974650ba1de73d038"
+checksum = "f61f1b6389c3fe1c316bf8a4dccc90a38208354b330925bce1f74a6c4756eb93"
 dependencies = [
  "cc",
  "cxxbridge-flags",
@@ -599,9 +599,9 @@ dependencies = [
 
 [[package]]
 name = "cxx-build"
-version = "1.0.93"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb8307ad413a98fff033c8545ecf133e3257747b3bae935e7602aab8aa92d4ca"
+checksum = "12cee708e8962df2aeb38f594aae5d827c022b6460ac71a7a3e2c3c2aae5a07b"
 dependencies = [
  "cc",
  "codespan-reporting",
@@ -609,24 +609,24 @@ dependencies = [
  "proc-macro2",
  "quote",
  "scratch",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
 name = "cxxbridge-flags"
-version = "1.0.93"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "edc52e2eb08915cb12596d29d55f0b5384f00d697a646dbd269b6ecb0fbd9d31"
+checksum = "7944172ae7e4068c533afbb984114a56c46e9ccddda550499caa222902c7f7bb"
 
 [[package]]
 name = "cxxbridge-macro"
-version = "1.0.93"
+version = "1.0.94"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "631569015d0d8d54e6c241733f944042623ab6df7bc3be7466874b05fcdb1c5f"
+checksum = "2345488264226bf682893e25de0769f3360aac9957980ec49361b083ddaa5bc5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -719,7 +719,7 @@ dependencies = [
  "proc-macro2",
  "proc-macro2-diagnostics",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -839,17 +839,6 @@ dependencies = [
 
 [[package]]
 name = "errno"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1"
-dependencies = [
- "errno-dragonfly",
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "errno"
 version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "50d6a0976c999d473fe89ad888d5a284e55366d9dc9038b1ba2aa15128c4afa0"
@@ -959,9 +948,9 @@ dependencies = [
 
 [[package]]
 name = "futures"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "531ac96c6ff5fd7c62263c5e3c67a603af4fcaee2e1a0ae5565ba3a11e69e549"
+checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -974,9 +963,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "164713a5a0dcc3e7b4b1ed7d3b433cabc18025386f9339346e8daf15963cf7ac"
+checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -984,15 +973,15 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86d7a0c1aa76363dac491de0ee99faf6941128376f1cf96f07db7603b7de69dd"
+checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1997dd9df74cdac935c76252744c1ed5794fac083242ea4fe77ef3ed60ba0f83"
+checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -1001,9 +990,9 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89d422fa3cbe3b40dca574ab087abb5bc98258ea57eea3fd6f1fa7162c778b91"
+checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
 
 [[package]]
 name = "futures-lite"
@@ -1022,26 +1011,26 @@ dependencies = [
 
 [[package]]
 name = "futures-macro"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3eb14ed937631bd8b8b8977f2c198443447a8355b6e3ca599f38c975e5a963b6"
+checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.13",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec93083a4aecafb2a80a885c9de1f0ccae9dbd32c2bb54b0c3a65690e0b8d2f2"
+checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
 
 [[package]]
 name = "futures-task"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd65540d33b37b16542a0438c12e6aeead10d4ac5d05bd3f805b8f35ab592879"
+checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
 
 [[package]]
 name = "futures-timer"
@@ -1051,9 +1040,9 @@ checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c"
 
 [[package]]
 name = "futures-util"
-version = "0.3.27"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ef6b17e481503ec85211fed8f39d1970f128935ca1f814cd32ac4a6842e84ab"
+checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1082,9 +1071,9 @@ dependencies = [
 
 [[package]]
 name = "generic-array"
-version = "0.14.6"
+version = "0.14.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9"
+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
 dependencies = [
  "typenum",
  "version_check",
@@ -1412,19 +1401,19 @@ dependencies = [
 
 [[package]]
 name = "ipnet"
-version = "2.7.1"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30e22bd8629359895450b59ea7a776c850561b96a3b1d31321c1949d9e6c9146"
+checksum = "12b6ee2129af8d4fb011108c73d99a1b83a85977f23b82460c0ae2e25bb4b57f"
 
 [[package]]
 name = "is-terminal"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8687c819457e979cc940d09cb16e42a1bf70aa6b60a549de6d3a62a0ee90c69e"
+checksum = "256017f749ab3117e93acb91063009e1f1bb56d03965b14c2c8df4eb02c524d8"
 dependencies = [
  "hermit-abi 0.3.1",
  "io-lifetimes",
- "rustix 0.36.11",
+ "rustix",
  "windows-sys 0.45.0",
 ]
 
@@ -1491,9 +1480,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
 name = "lettre"
-version = "0.10.3"
+version = "0.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8033576bf9f051fce6cb92b6264114b4340896c352a9ff38b67bd4cde924635"
+checksum = "76bd09637ae3ec7bd605b8e135e757980b3968430ff2b1a4a94fb7769e50166d"
 dependencies = [
  "async-std",
  "async-trait",
@@ -1562,15 +1551,9 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
-
-[[package]]
-name = "linux-raw-sys"
-version = "0.3.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd550e73688e6d578f0ac2119e32b797a327631a42f9433e59d02e139c8df60d"
+checksum = "d59d8c75012853d2e872fb56bc8a2e53718e2cafe1a4c823143141c6d90c322f"
 
 [[package]]
 name = "lock_api"
@@ -1717,9 +1700,9 @@ dependencies = [
 
 [[package]]
 name = "multer"
-version = "2.0.4"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ed4198ce7a4cbd2a57af78d28c6fbb57d81ac5f1d6ad79ac6c5587419cbdf22"
+checksum = "01acbdc23469fd8fe07ab135923371d5f5a422fbf9c522158677c8eb15bc51c2"
 dependencies = [
  "bytes",
  "encoding_rs",
@@ -1729,7 +1712,7 @@ dependencies = [
  "log",
  "memchr",
  "mime",
- "spin 0.9.6",
+ "spin 0.9.7",
  "tokio",
  "tokio-util",
  "version_check",
@@ -1863,9 +1846,9 @@ checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
 
 [[package]]
 name = "openssl"
-version = "0.10.48"
+version = "0.10.49"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "518915b97df115dd36109bfa429a48b8f737bd05508cf9588977b599648926d2"
+checksum = "4d2f106ab837a24e03672c59b1239669a0596406ff657c3c0835b6b7f0f35a33"
 dependencies = [
  "bitflags 1.3.2",
  "cfg-if",
@@ -1878,13 +1861,13 @@ dependencies = [
 
 [[package]]
 name = "openssl-macros"
-version = "0.1.0"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c"
+checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -1904,11 +1887,10 @@ dependencies = [
 
 [[package]]
 name = "openssl-sys"
-version = "0.9.83"
+version = "0.9.84"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "666416d899cf077260dac8698d60a60b435a46d57e82acb1be3d0dad87284e5b"
+checksum = "3a20eace9dc2d82904039cb76dcf50fb1a0bba071cfd1629720b5d6f1ddba0fa"
 dependencies = [
- "autocfg",
  "cc",
  "libc",
  "openssl-src",
@@ -1946,7 +1928,7 @@ checksum = "9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521"
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall",
+ "redox_syscall 0.2.16",
  "smallvec",
  "windows-sys 0.45.0",
 ]
@@ -1997,7 +1979,7 @@ dependencies = [
  "proc-macro2",
  "proc-macro2-diagnostics",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -2017,9 +1999,9 @@ checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
 
 [[package]]
 name = "pest"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8cbd939b234e95d72bc393d51788aec68aeeb5d51e748ca08ff3aad58cb722f7"
+checksum = "7b1403e8401ad5dedea73c626b99758535b342502f8d1e361f4a2dd952749122"
 dependencies = [
  "thiserror",
  "ucd-trie",
@@ -2027,9 +2009,9 @@ dependencies = [
 
 [[package]]
 name = "pest_derive"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a81186863f3d0a27340815be8f2078dd8050b14cd71913db9fbda795e5f707d7"
+checksum = "be99c4c1d2fc2769b1d00239431d711d08f6efedcecb8b6e30707160aee99c15"
 dependencies = [
  "pest",
  "pest_generator",
@@ -2037,22 +2019,22 @@ dependencies = [
 
 [[package]]
 name = "pest_generator"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75a1ef20bf3193c15ac345acb32e26b3dc3223aff4d77ae4fc5359567683796b"
+checksum = "e56094789873daa36164de2e822b3888c6ae4b4f9da555a1103587658c805b1e"
 dependencies = [
  "pest",
  "pest_meta",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.13",
 ]
 
 [[package]]
 name = "pest_meta"
-version = "2.5.6"
+version = "2.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e3b284b1f13a20dc5ebc90aff59a51b8d7137c221131b52a7260c08cbc1cc80"
+checksum = "6733073c7cff3d8459fda0e42f13a047870242aed8b509fe98000928975f359e"
 dependencies = [
  "once_cell",
  "pest",
@@ -2178,9 +2160,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.53"
+version = "1.0.55"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba466839c78239c09faf015484e5cc04860f88242cff4d03eb038f04b4699b73"
+checksum = "1d0dd4be24fcdcfeaa12a432d588dc59bbad6cad3510c67e74a2b6b2fc950564"
 dependencies = [
  "unicode-ident",
 ]
@@ -2193,7 +2175,7 @@ checksum = "606c4ba35817e2922a308af55ad51bab3645b59eae5c570d4a6cf07e36bd493b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
  "version_check",
  "yansi",
 ]
@@ -2311,6 +2293,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "redox_syscall"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
+dependencies = [
+ "bitflags 1.3.2",
+]
+
+[[package]]
 name = "ref-cast"
 version = "1.0.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2327,7 +2318,7 @@ checksum = "8d2275aab483050ab2a7364c1a46604865ee7d6906684e08db0f090acf74f9e7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -2358,9 +2349,9 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
 
 [[package]]
 name = "reqwest"
-version = "0.11.15"
+version = "0.11.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ba30cc2c0cd02af1222ed216ba659cdb2f879dfe3181852fe7c50b1d0005949"
+checksum = "27b71749df584b7f4cac2c426c127a7c785a5106cc98f7a8feb044115f0fa254"
 dependencies = [
  "async-compression",
  "base64 0.21.0",
@@ -2497,7 +2488,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "rocket_http",
- "syn 2.0.10",
+ "syn 2.0.13",
  "unicode-xid",
 ]
 
@@ -2554,29 +2545,15 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.36.11"
+version = "0.37.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db4165c9963ab29e422d6c26fbc1d37f15bace6b2810221f9d925023480fcf0e"
+checksum = "d097081ed288dfe45699b72f5b5d648e5f15d64d900c7080273baa20c16a6849"
 dependencies = [
  "bitflags 1.3.2",
- "errno 0.2.8",
+ "errno",
  "io-lifetimes",
  "libc",
- "linux-raw-sys 0.1.4",
- "windows-sys 0.45.0",
-]
-
-[[package]]
-name = "rustix"
-version = "0.37.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b24138615de35e32031d041a09032ef3487a616d901ca4db224e7d557efae2"
-dependencies = [
- "bitflags 1.3.2",
- "errno 0.3.0",
- "io-lifetimes",
- "libc",
- "linux-raw-sys 0.3.0",
+ "linux-raw-sys",
  "windows-sys 0.45.0",
 ]
 
@@ -2699,9 +2676,9 @@ checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed"
 
 [[package]]
 name = "serde"
-version = "1.0.158"
+version = "1.0.159"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "771d4d9c4163ee138805e12c710dd365e4f44be8be0503cb1bb9eb989425d9c9"
+checksum = "3c04e8343c3daeec41f58990b9d77068df31209f2af111e059e9fe9646693065"
 dependencies = [
  "serde_derive",
 ]
@@ -2718,20 +2695,20 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.158"
+version = "1.0.159"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e801c1712f48475582b7696ac71e0ca34ebb30e09338425384269d9717c62cad"
+checksum = "4c614d17805b093df4b147b51339e7e44bf05ef59fba1e45d83500bcfb4d8585"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.94"
+version = "1.0.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c533a59c9d8a93a09c6ab31f0fd5e5f4dd1b8fc9434804029839884765d04ea"
+checksum = "d721eca97ac802aa7777b701877c8004d950fc142651367300d21c1cc0194744"
 dependencies = [
  "itoa",
  "ryu",
@@ -2862,9 +2839,9 @@ checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
 
 [[package]]
 name = "spin"
-version = "0.9.6"
+version = "0.9.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5d6e0250b93c8427a177b849d144a96d5acc57006149479403d7861ab721e34"
+checksum = "c0959fd6f767df20b231736396e4f602171e00d95205676286e79d4a4eb67bef"
 
 [[package]]
 name = "stable-pattern"
@@ -2909,9 +2886,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.10"
+version = "2.0.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aad1363ed6d37b84299588d62d3a7d95b5a5c2d9aad5c85609fda12afaa1f40"
+checksum = "4c9da457c5285ac1f936ebd076af6dac17a61cfe7826f2076b4d015cf47bc8ec"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2933,15 +2910,15 @@ dependencies = [
 
 [[package]]
 name = "tempfile"
-version = "3.4.0"
+version = "3.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af18f7ae1acd354b992402e9ec5864359d693cd8a79dcbef59f76891701c1e95"
+checksum = "b9fbec84f381d5795b08656e4912bec604d162bff9291d6189a78f4c8ab87998"
 dependencies = [
  "cfg-if",
  "fastrand",
- "redox_syscall",
- "rustix 0.36.11",
- "windows-sys 0.42.0",
+ "redox_syscall 0.3.5",
+ "rustix",
+ "windows-sys 0.45.0",
 ]
 
 [[package]]
@@ -2970,7 +2947,7 @@ checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.10",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -3038,14 +3015,13 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.26.0"
+version = "1.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03201d01c3c27a29c8a5cee5b55a93ddae1ccf6f08f65365c2c918f8c1b76f64"
+checksum = "d0de47a4eecbe11f498978a9b29d792f0d2692d1dd003650c24c76510e3bc001"
 dependencies = [
  "autocfg",
  "bytes",
  "libc",
- "memchr",
  "mio",
  "num_cpus",
  "parking_lot",
@@ -3058,13 +3034,13 @@ dependencies = [
 
 [[package]]
 name = "tokio-macros"
-version = "1.8.2"
+version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d266c00fde287f55d3f1c3e96c500c362a2b8c695076ec180f27918820bc6df8"
+checksum = "61a573bdc87985e9d6ddeed1b3d864e8a302c847e40d647746df2f1de209d1ce"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.13",
 ]
 
 [[package]]
@@ -3437,6 +3413,7 @@ dependencies = [
  "job_scheduler_ng",
  "jsonwebtoken",
  "lettre",
+ "libmimalloc-sys",
  "libsqlite3-sys",
  "log",
  "mimalloc",
diff --git a/pkgs/tools/security/vaultwarden/default.nix b/pkgs/tools/security/vaultwarden/default.nix
index a31f5e45c4a82..19dd26b0b3fa2 100644
--- a/pkgs/tools/security/vaultwarden/default.nix
+++ b/pkgs/tools/security/vaultwarden/default.nix
@@ -9,13 +9,13 @@ in
 
 rustPlatform.buildRustPackage rec {
   pname = "vaultwarden";
-  version = "1.28.0";
+  version = "1.28.1";
 
   src = fetchFromGitHub {
     owner = "dani-garcia";
     repo = pname;
     rev = version;
-    hash = "sha256-ML5eblQUk4xMYbBeLxk9tNxi7N4ltrCjMG0oM9zL6JI=";
+    hash = "sha256-YIR8if6lFJ+534qBN9k1ltFp5M7KBU5qYaI1KppTYwI=";
   };
 
   cargoLock = {
@@ -28,10 +28,6 @@ rustPlatform.buildRustPackage rec {
     ++ optional (dbBackend == "mysql") libmysqlclient
     ++ optional (dbBackend == "postgresql") postgresql;
 
-  # vaultwarden depends on rocket v0.5.0-dev, which requires nightly features.
-  # This may be removed if https://github.com/dani-garcia/vaultwarden/issues/712 is fixed.
-  RUSTC_BOOTSTRAP = 1;
-
   buildFeatures = dbBackend;
 
   passthru = {
diff --git a/pkgs/tools/security/zeekscript/default.nix b/pkgs/tools/security/zeekscript/default.nix
new file mode 100644
index 0000000000000..cf5e44ea8f68b
--- /dev/null
+++ b/pkgs/tools/security/zeekscript/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, python3
+, fetchPypi
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "zeekscript";
+  version = "1.2.1";
+  format = "pyproject";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-LogI9sJHvLN5WHJGdW47D09XZInKln/I2hNmG62d1JU=";
+  };
+
+  nativeBuildInputs = with python3.pkgs; [
+    setuptools
+  ];
+
+  propagatedBuildInputs = with python3.pkgs; [
+    tree-sitter
+  ];
+
+  pythonImportsCheck = [
+    "zeekscript"
+  ];
+
+  meta = with lib; {
+    description = "A Zeek script formatter and analyzer";
+    homepage = "https://github.com/zeek/zeekscript";
+    changelog = "https://github.com/zeek/zeekscript/blob/v${version}/CHANGES";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ fab tobim ];
+  };
+}
diff --git a/pkgs/tools/system/erdtree/default.nix b/pkgs/tools/system/erdtree/default.nix
index 6d86f687ecbc9..49c5b2968391e 100644
--- a/pkgs/tools/system/erdtree/default.nix
+++ b/pkgs/tools/system/erdtree/default.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "erdtree";
-  version = "1.7.1";
+  version = "1.8.1";
 
   src = fetchFromGitHub {
     owner = "solidiquis";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-dSIq6PNkFkdYvAzNQ1qBEZWEdiYYZCb/7rNICuUJAsE=";
+    hash = "sha256-RKIQM5RJygVL15Q3B30DXnqTSbVPJZdb8YNitanzOEA=";
   };
 
-  cargoHash = "sha256-Dpg4AbDClqh6yzI/s5LQDP6QkyTMLP/IJIp2l2d+Ouw=";
+  cargoHash = "sha256-5bK+gJRBX0Xij5TUGD6BVWDDUJzUzHNPWoLwSXLF9iY=";
 
   meta = with lib; {
     description = "File-tree visualizer and disk usage analyzer";
diff --git a/pkgs/tools/system/gdu/default.nix b/pkgs/tools/system/gdu/default.nix
index 21691b0d44722..01c2252713824 100644
--- a/pkgs/tools/system/gdu/default.nix
+++ b/pkgs/tools/system/gdu/default.nix
@@ -9,16 +9,16 @@
 
 buildGoModule rec {
   pname = "gdu";
-  version = "5.22.0";
+  version = "5.23.0";
 
   src = fetchFromGitHub {
     owner = "dundee";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-bWeMZ1tQkJsRJbolZBue9UzM4Qs7K5Rj5Z80Uotyb8I=";
+    hash = "sha256-Uv5wPEGmd2+LVZoSw/K24F3czyjGi6ysQsNtq87p4fg=";
   };
 
-  vendorHash = "sha256-UP6IdJLc93gRP4vwKKOJl3sNt4sOFeYXjvwk8QM+D48=";
+  vendorHash = "sha256-BQOlp2mjycOSB0qjLuVNo3+n0xqb77IMizUY6Sz94PM=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/tools/system/gptfdisk/default.nix b/pkgs/tools/system/gptfdisk/default.nix
index dbce7316303b4..ea6b12ac5eb06 100644
--- a/pkgs/tools/system/gptfdisk/default.nix
+++ b/pkgs/tools/system/gptfdisk/default.nix
@@ -13,7 +13,6 @@ stdenv.mkDerivation rec {
 
   patches = [
     # issues with popt 1.19 (from upstream but not yet released):
-    # https://sourceforge.net/p/gptfdisk/code/ci/5d5e76d369a412bfb3d2cebb5fc0a7509cef878d/
     # https://github.com/rpm-software-management/popt/issues/80
     ./popt-1-19.patch
 
diff --git a/pkgs/tools/system/gptfdisk/popt-1-19.patch b/pkgs/tools/system/gptfdisk/popt-1-19.patch
index ae971362cdd5d..234c664c962cd 100644
--- a/pkgs/tools/system/gptfdisk/popt-1-19.patch
+++ b/pkgs/tools/system/gptfdisk/popt-1-19.patch
@@ -1,3 +1,25 @@
+commit 5d5e76d369a412bfb3d2cebb5fc0a7509cef878d
+Author: Rod Smith <rodsmith@rodsbooks.com>
+Date:   Fri Apr 15 18:10:14 2022 -0400
+
+    Fix failure & crash of sgdisk when compiled with latest popt (commit 740; presumably eventually release 1.19)
+
+diff --git a/NEWS b/NEWS
+index c7add56..9e153fd 100644
+--- a/NEWS
++++ b/NEWS
+@@ -1,3 +1,11 @@
++1.0.10 (?/??/2022):
++-------------------
++
++- Fixed problem that caused sgdisk to crash with errors about being unable
++  to read the disk's partition table when compiled with the latest popt
++  (commit 740, which is pre-release as I type; presumably version 1.19 and
++  later once released).
++
+ 1.0.9 (4/14/2022):
+ ------------------
+ 
 diff --git a/gptcl.cc b/gptcl.cc
 index 34c9421..0d578eb 100644
 --- a/gptcl.cc
@@ -11,3 +33,52 @@ index 34c9421..0d578eb 100644
     poptResetContext(poptCon);
  
     if (device != NULL) {
+diff --git a/support.h b/support.h
+index 8ba9ad1..f91f1bc 100644
+--- a/support.h
++++ b/support.h
+@@ -8,7 +8,7 @@
+ #include <stdlib.h>
+ #include <string>
+ 
+-#define GPTFDISK_VERSION "1.0.9"
++#define GPTFDISK_VERSION "1.0.9.1"
+ 
+ #if defined (__FreeBSD__) || defined (__FreeBSD_kernel__) || defined (__APPLE__)
+ // Darwin (Mac OS) & FreeBSD: disk IOCTLs are different, and there is no lseek64
+
+commit f5de3401b974ce103ffd93af8f9d43505a04aaf9
+Author: Damian Kurek <starfire24680@gmail.com>
+Date:   Thu Jul 7 03:39:16 2022 +0000
+
+    Fix NULL dereference when duplicating string argument
+    
+    poptGetArg can return NULL if there are no additional arguments, which
+    makes strdup dereference NULL on strlen
+
+diff --git a/gptcl.cc b/gptcl.cc
+index 0d578eb..ab95239 100644
+--- a/gptcl.cc
++++ b/gptcl.cc
+@@ -155,10 +155,11 @@ int GPTDataCL::DoOptions(int argc, char* argv[]) {
+    } // while
+ 
+    // Assume first non-option argument is the device filename....
+-   device = strdup((char*) poptGetArg(poptCon));
+-   poptResetContext(poptCon);
++   device = (char*) poptGetArg(poptCon);
+ 
+    if (device != NULL) {
++      device = strdup(device);
++      poptResetContext(poptCon);
+       JustLooking(); // reset as necessary
+       BeQuiet(); // Tell called functions to be less verbose & interactive
+       if (LoadPartitions((string) device)) {
+@@ -498,6 +499,7 @@ int GPTDataCL::DoOptions(int argc, char* argv[]) {
+          cerr << "Error encountered; not saving changes.\n";
+          retval = 4;
+       } // if
++      free(device);
+    } // if (device != NULL)
+    poptFreeContext(poptCon);
+    return retval;
diff --git a/pkgs/tools/system/kmon/default.nix b/pkgs/tools/system/kmon/default.nix
index 6f54579132f50..589460e6a893c 100644
--- a/pkgs/tools/system/kmon/default.nix
+++ b/pkgs/tools/system/kmon/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "kmon";
-  version = "1.6.2";
+  version = "1.6.3";
 
   src = fetchFromGitHub {
     owner = "orhun";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-LJ8vfjSUaNZQAtv9TXAZf1JMRzB1yN8/qbXphRUJVYY=";
+    sha256 = "sha256-lB6vJqb6/Qwj3odCJzyQ0+xEl5V/ZPj9cAJGNfiYAOY=";
   };
 
-  cargoSha256 = "sha256-5OUc2e1fMlSArKMCANqtRCAh21iPjzuGjGrEP8/hQXk=";
+  cargoSha256 = "sha256-Ff5vGc90VxmyKQSsjUfoI1NL95DmD1SJx3eC1SP6rt4=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/system/nats-top/default.nix b/pkgs/tools/system/nats-top/default.nix
index f394f54ff39e2..1ea9d236942a9 100644
--- a/pkgs/tools/system/nats-top/default.nix
+++ b/pkgs/tools/system/nats-top/default.nix
@@ -5,20 +5,21 @@
 
 buildGoModule rec {
   pname = "nats-top";
-  version = "0.5.3";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "nats-io";
     repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-G2rUN+eFYWz78xDJcwYVtooTtNSNWR2nUTzar5ztWwE=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-ZSPv4meyIYqNJm6SvqnpOjTtRGvfkUOAxn3JHmK5UEQ=";
   };
 
-  vendorSha256 = "sha256-UOy3kyKtOXADdyoZ2rVgIQEOPs2oPBkMTYXxfQzVFmc=";
+  vendorHash = "sha256-8UcHRFt/O8RgZRxODIJZ16zvBi7FmadYdA/NUH9kfEo=";
 
   meta = with lib; {
     description = "top-like tool for monitoring NATS servers";
     homepage = "https://github.com/nats-io/nats-top";
+    changelog = "https://github.com/nats-io/nats-top/releases/tag/v${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/tools/system/openseachest/default.nix b/pkgs/tools/system/openseachest/default.nix
index fe806bd21dbba..1bdcf796f7504 100644
--- a/pkgs/tools/system/openseachest/default.nix
+++ b/pkgs/tools/system/openseachest/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "openseachest";
-  version = "23.03";
+  version = "23.03.1";
 
   src = fetchFromGitHub {
     owner = "Seagate";
     repo = "openSeaChest";
     rev = "v${version}";
-    sha256 = "sha256-D/TvT+LnAVhkQ32U+VdW7AA3BfKurmK4mwIY8vwXIpc=";
+    sha256 = "sha256-jDCCozHeOazB3cM/9TlwHq1pu7yTiD818jykHeQ+RBo=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/tools/text/ansifilter/default.nix b/pkgs/tools/text/ansifilter/default.nix
index 79aa4e2debcd7..641a9e71877cb 100644
--- a/pkgs/tools/text/ansifilter/default.nix
+++ b/pkgs/tools/text/ansifilter/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ansifilter";
-  version = "2.18";
+  version = "2.19";
 
   src = fetchurl {
     url = "http://www.andre-simon.de/zip/ansifilter-${version}.tar.bz2";
-    sha256 = "sha256-Zs8BfTakPV9q4gYJzjtYZHSU7mwOQfxoLFmL/859fTk=";
+    hash = "sha256-+cJ7GIORShsdSWX0xJsr5QLiqfyd0/YRI6vq6YnDVLw=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/tools/text/d2/default.nix b/pkgs/tools/text/d2/default.nix
index 8c509365f0a84..14a8987af2447 100644
--- a/pkgs/tools/text/d2/default.nix
+++ b/pkgs/tools/text/d2/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "d2";
-  version = "0.2.6";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "terrastruct";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-bZJu4l5xAVqm/1HIhHfnZF9JRswAE/c6OzuZ8mmHA9U=";
+    hash = "sha256-ll6kOmHJZRsN6DkQRAUXyxz61tjwwi+p5eOuLfGDpI8=";
   };
 
-  vendorHash = "sha256-wXE2+a30KohIOuxFeBQPcV7X2Ka+4t7zqHdr48kifY0=";
+  vendorHash = "sha256-jfGolYHWX/9Zr5JHiWl8mCfaaRT2AU8v32PtgM1KI8c=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/tools/text/goawk/default.nix b/pkgs/tools/text/goawk/default.nix
index a9d71f1faaed9..a3ecc22b28d5e 100644
--- a/pkgs/tools/text/goawk/default.nix
+++ b/pkgs/tools/text/goawk/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "goawk";
-  version = "1.21.0";
+  version = "1.22.0";
 
   src = fetchFromGitHub {
     owner = "benhoyt";
     repo = "goawk";
     rev = "v${version}";
-    sha256 = "sha256-I6KmNPFD8kkYDyek8lR1ZS7biPA/LYGwJqMoA2fG7Wg=";
+    sha256 = "sha256-8UoYGAmYmC0hcxLfkNac3flKyPBT/xsykuy+TvVosBI=";
   };
 
   vendorSha256 = null;
diff --git a/pkgs/tools/text/hck/default.nix b/pkgs/tools/text/hck/default.nix
index a1d30da61d30d..0467894b116a3 100644
--- a/pkgs/tools/text/hck/default.nix
+++ b/pkgs/tools/text/hck/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hck";
-  version = "0.9.1";
+  version = "0.9.2";
 
   src = fetchFromGitHub {
     owner = "sstadick";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-wsuXEHwnTP+vl8Gn1mfH+cKoasDdZ+ILiAaJ7510lsI=";
+    sha256 = "sha256-KPpvai7+El2JA97EXDCstZ66FeyVCe7w+ERDDNRZ/h8=";
   };
 
-  cargoSha256 = "sha256-qWat0QIMLmMrbK/QCr3dSyWP27wFFQ+IDQAzLngThQE=";
+  cargoSha256 = "sha256-TpwUO0BL8kambnxAUE9+l6YYkNL1WzmkTYn1YxjufdY=";
 
   nativeBuildInputs = [ cmake ];
 
diff --git a/pkgs/tools/text/mdbook/default.nix b/pkgs/tools/text/mdbook/default.nix
index 155cca613a7b3..39926cded4bc7 100644
--- a/pkgs/tools/text/mdbook/default.nix
+++ b/pkgs/tools/text/mdbook/default.nix
@@ -13,8 +13,6 @@ rustPlatform.buildRustPackage rec {
 
   cargoHash = "sha256-TViBclvCJeoOInTt13B7297JDtRkwvOjIf6AVAbpanU=";
 
-  auditable = true; # TODO: remove when this is the default
-
   buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
 
   passthru = {
diff --git a/pkgs/tools/text/nerdfix/default.nix b/pkgs/tools/text/nerdfix/default.nix
index 69375e0839b5c..ebf668d7d5d8e 100644
--- a/pkgs/tools/text/nerdfix/default.nix
+++ b/pkgs/tools/text/nerdfix/default.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "nerdfix";
-  version = "0.2.0";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
     owner = "loichyan";
     repo = "nerdfix";
     rev = "v${version}";
-    hash = "sha256-HNd2wx1nUzPPs+wQBU4FOgDBq4mcyigEPtGpT44VPzo=";
+    hash = "sha256-bohN3RXGZObDSDsggKmqKdLx37o8llTwIcpDQIbxEUo=";
   };
 
-  cargoHash = "sha256-rTDMg9TKHNqLjQztT/AhDYWNZjrRUk+/LM34ofYr/Ws=";
+  cargoHash = "sha256-T5t+PvzCKfwiKQR/WWKxcoulSRhTNdiLDfoLnKO2qJ0=";
 
   meta = with lib; {
     description = "Nerdfix helps you to find/fix obsolete nerd font icons in your project";
diff --git a/pkgs/tools/text/peco/default.nix b/pkgs/tools/text/peco/default.nix
index 36951be7edbcc..7c026f06292e7 100644
--- a/pkgs/tools/text/peco/default.nix
+++ b/pkgs/tools/text/peco/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "peco";
-  version = "0.5.10";
+  version = "0.5.11";
 
   subPackages = [ "cmd/peco" ];
 
@@ -10,10 +10,10 @@ buildGoModule rec {
     owner = "peco";
     repo = "peco";
     rev = "v${version}";
-    sha256 = "sha256-Iu2MclUbUYX1FuMnE65Qdk0S+5+K3HW86WIdQrNUyY8=";
+    sha256 = "sha256-OVUfeNpnmuJsgD//JTn6n9n4oOBxep69LhIpHX+ru2w=";
   };
 
-  vendorSha256 = "sha256-+HQz7UUgATdgSWlI1dg2DdQRUSke9MyAtXgLikFhF90=";
+  vendorHash = "sha256-+HQz7UUgATdgSWlI1dg2DdQRUSke9MyAtXgLikFhF90=";
 
   meta = with lib; {
     description = "Simplistic interactive filtering tool";
diff --git a/pkgs/tools/text/ripgrep/default.nix b/pkgs/tools/text/ripgrep/default.nix
index be989994dbff0..022f8bd25bb7b 100644
--- a/pkgs/tools/text/ripgrep/default.nix
+++ b/pkgs/tools/text/ripgrep/default.nix
@@ -22,8 +22,6 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "1kfdgh8dra4jxgcdb0lln5wwrimz0dpp33bq3h7jgs8ngaq2a9wp";
 
-  auditable = true; # TODO: remove when this is the default
-
   nativeBuildInputs = [ asciidoctor installShellFiles ]
     ++ lib.optional withPCRE2 pkg-config;
   buildInputs = lib.optional withPCRE2 pcre2
diff --git a/pkgs/tools/text/ugrep/default.nix b/pkgs/tools/text/ugrep/default.nix
index 4832fa3b6e732..22311f9d0c04b 100644
--- a/pkgs/tools/text/ugrep/default.nix
+++ b/pkgs/tools/text/ugrep/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ugrep";
-  version = "3.11.0";
+  version = "3.11.2";
 
   src = fetchFromGitHub {
     owner = "Genivia";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-nqnuEahOsnGX38526cIe8Vj7YoEJxO1ydbgfPwlpK+o=";
+    hash = "sha256-NDH2OEweIU0/JHfkq0md6cll2uwCTLkVmJcmF337DUw=";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/typesetting/hayagriva/default.nix b/pkgs/tools/typesetting/hayagriva/default.nix
new file mode 100644
index 0000000000000..9f33ae6006e2a
--- /dev/null
+++ b/pkgs/tools/typesetting/hayagriva/default.nix
@@ -0,0 +1,26 @@
+{ lib
+, rustPlatform
+, fetchCrate
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "hayagriva";
+  version = "0.3.0";
+
+  src = fetchCrate {
+    inherit pname version;
+    hash = "sha256-zp7YfMmp16YRWNcOf5aVt1vXnL+23+DyFeFn7Gow7wM=";
+  };
+
+  cargoHash = "sha256-jsVd4vyST563HiXvqCfiZ2oUhNXF4E8Y2HBLl5AtvRw=";
+
+  buildFeatures = [ "cli" ];
+
+  meta = with lib; {
+    description = "Work with references: Literature database management, storage, and citation formatting";
+    homepage = "https://github.com/typst/hayagriva";
+    changelog = "https://github.com/typst/hayagriva/releases/tag/v${version}";
+    license = with licenses; [ asl20 mit ];
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/pkgs/tools/typesetting/pulldown-cmark/default.nix b/pkgs/tools/typesetting/pulldown-cmark/default.nix
new file mode 100644
index 0000000000000..69c327c42dda6
--- /dev/null
+++ b/pkgs/tools/typesetting/pulldown-cmark/default.nix
@@ -0,0 +1,25 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "pulldown-cmark";
+  version = "0.9.2";
+
+  src = fetchFromGitHub {
+    owner = "raphlinus";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-AAb+dSJ1oSRuvWu47VvzCeB6pQE6/+u69io2FsZoZHM=";
+  };
+
+  cargoHash = "sha256-oOgwZMmrzYBFH1MaE7nMa1SPCACnfqYY3ttOECsnsVY=";
+
+  meta = {
+    description = "A pull parser for CommonMark written in Rust";
+    homepage = "https://github.com/raphlinus/pulldown-cmark";
+    license = with lib.licenses; [ mit ];
+    maintainers = with lib.maintainers; [ CobaltCause ];
+  };
+}
diff --git a/pkgs/tools/typesetting/sile/default.nix b/pkgs/tools/typesetting/sile/default.nix
index 6d652c38f2ee3..a1fabd0342096 100644
--- a/pkgs/tools/typesetting/sile/default.nix
+++ b/pkgs/tools/typesetting/sile/default.nix
@@ -45,11 +45,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "sile";
-  version = "0.14.8";
+  version = "0.14.9";
 
   src = fetchurl {
     url = "https://github.com/sile-typesetter/sile/releases/download/v${version}/${pname}-${version}.tar.xz";
-    sha256 = "0r00s7c8ycc9haqf7p141gj5jn3k0kxpjdzb538f1jpwkgi6mjh9";
+    sha256 = "0528835iir2ws14fwb7w4dqs3wlzzcv5arjxs8v13drb194rlwcs";
   };
 
   configureFlags = [
diff --git a/pkgs/tools/typesetting/tex/mftrace/default.nix b/pkgs/tools/typesetting/tex/mftrace/default.nix
index 627b08436581b..9f061630e2248 100644
--- a/pkgs/tools/typesetting/tex/mftrace/default.nix
+++ b/pkgs/tools/typesetting/tex/mftrace/default.nix
@@ -20,7 +20,7 @@
   - fontforge = null (limited functionality)
 */
 
-let self = stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: rec {
   pname = "mftrace";
   version = "1.2.20";
 
@@ -39,14 +39,16 @@ let self = stdenv.mkDerivation rec {
   buildInputs = [ fontforge potrace ];
 
   postInstall = ''
-    wrapProgram $out/bin/mftrace --prefix PATH : ${lib.makeBinPath buildInputs}
+    wrapProgram $out/bin/mftrace --prefix PATH : ${lib.makeBinPath finalAttrs.buildInputs}
   '';
 
   # experimental texlive.combine support
   # (note that only the bin/ folder will be combined into texlive)
-  passthru.tlType = "bin";
-  passthru.pkgs = [ self ] ++
-    (with texlive; kpathsea.pkgs ++ t1utils.pkgs ++ metafont.pkgs);
+  passthru = {
+    tlType = "bin";
+    tlDeps = with texlive; [ kpathsea t1utils metafont ];
+    pkgs = [ finalAttrs.finalPackage ];
+  };
 
   meta = with lib; {
     description = "Scalable PostScript Fonts for MetaFont";
@@ -60,4 +62,4 @@ let self = stdenv.mkDerivation rec {
     maintainers = with maintainers; [ xworld21 ];
     platforms = platforms.all;
   };
-}; in self
+})
diff --git a/pkgs/tools/typesetting/tex/texlive/bin.nix b/pkgs/tools/typesetting/tex/texlive/bin.nix
index 255c208783f97..77c195962b3a5 100644
--- a/pkgs/tools/typesetting/tex/texlive/bin.nix
+++ b/pkgs/tools/typesetting/tex/texlive/bin.nix
@@ -121,8 +121,11 @@ core = stdenv.mkDerivation rec {
   installTargets = [ "install" "texlinks" ];
 
   # TODO: perhaps improve texmf.cnf search locations
-  postInstall = /* links format -> engine will be regenerated in texlive.combine */ ''
-    PATH="$out/bin:$PATH" ${buildPackages.texlive.bin.texlinks}/bin/texlinks --cnffile "$out/share/texmf-dist/web2c/fmtutil.cnf" --unlink "$out/bin"
+  postInstall =
+    /* links format -> engine will be regenerated in texlive.combine
+       note: for unlinking, the texlinks patch is irrelevant, so we use
+       the included texlinks.sh to avoid the dependency on bin.texlinks */ ''
+    PATH="$out/bin:$PATH" sh ../texk/texlive/linked_scripts/texlive-extra/texlinks.sh --cnffile "$out/share/texmf-dist/web2c/fmtutil.cnf" --unlink "$out/bin"
   '' + /* a few texmf-dist files are useful; take the rest from pkgs */ ''
     mv "$out/share/texmf-dist/web2c/texmf.cnf" .
     rm -r "$out/share/texmf-dist"
diff --git a/pkgs/tools/typesetting/tex/texlive/combine.nix b/pkgs/tools/typesetting/tex/texlive/combine.nix
index 5681d2cd454e8..1b67c62a7eebc 100644
--- a/pkgs/tools/typesetting/tex/texlive/combine.nix
+++ b/pkgs/tools/typesetting/tex/texlive/combine.nix
@@ -10,18 +10,18 @@ let
   pkgSet = removeAttrs args [ "pkgFilter" "extraName" "extraVersion" ] // {
     # include a fake "core" package
     core.pkgs = [
-      (bin.core.out // { pname = "core"; tlType = "bin"; })
-      (bin.core.doc // { pname = "core"; tlType = "doc"; })
+      (bin.core.out // { pname = "core"; version = "0"; tlType = "bin"; })
+      (bin.core.doc // { pname = "core"; version = "0"; tlType = "doc"; })
     ];
   };
   pkgList = rec {
     all = lib.filter pkgFilter (combinePkgs (lib.attrValues pkgSet));
     splitBin = builtins.partition (p: p.tlType == "bin") all;
-    bin = mkUniqueOutPaths splitBin.right
+    bin = splitBin.right
       ++ lib.optional
           (lib.any (p: p.tlType == "run" && p.pname == "pdfcrop") splitBin.wrong)
           (lib.getBin ghostscript);
-    nonbin = mkUniqueOutPaths splitBin.wrong;
+    nonbin = splitBin.wrong;
 
     # extra interpreters needed for shebangs, based on 2015 schemes "medium" and "tetex"
     # (omitted tk needed in pname == "epspdf", bin/epspdftk)
@@ -33,17 +33,13 @@ let
       ++ lib.optional (lib.any pkgNeedsRuby splitBin.wrong) ruby;
   };
 
-  sortedUniqueStrings = list: lib.sort (a: b: a < b) (lib.unique list);
-
-  mkUniqueOutPaths = pkgs: lib.unique
-    (map (p: p.outPath) (builtins.filter lib.isDerivation pkgs));
-
   name = "texlive-${extraName}-${bin.texliveYear}${extraVersion}";
 
   texmf = (buildEnv {
     name = "${name}-texmf";
 
-    paths = pkgList.nonbin;
+    # remove fake derivations (without 'outPath') to avoid undesired build dependencies
+    paths = lib.catAttrs "outPath" pkgList.nonbin;
 
     nativeBuildInputs = [ perl bin.core.out ];
 
@@ -72,7 +68,9 @@ in (buildEnv {
   inherit name;
 
   ignoreCollisions = false;
-  paths = pkgList.bin ++ [ doc ];
+
+  # remove fake derivations (without 'outPath') to avoid undesired build dependencies
+  paths = lib.catAttrs "outPath" pkgList.bin ++ [ doc ];
   pathsToLink = [
     "/"
     "/bin" # ensure these are writeable directories
@@ -123,9 +121,9 @@ in (buildEnv {
     # now filter hyphenation patterns and formats
   (let
     hyphens = lib.filter (p: p.hasHyphens or false && p.tlType == "run") pkgList.splitBin.wrong;
-    hyphenPNames = sortedUniqueStrings (map (p: p.pname) hyphens);
+    hyphenPNames = map (p: p.pname) hyphens;
     formats = lib.filter (p: p.hasFormats or false && p.tlType == "run") pkgList.splitBin.wrong;
-    formatPNames = sortedUniqueStrings (map (p: p.pname) formats);
+    formatPNames = map (p: p.pname) formats;
     # sed expression that prints the lines in /start/,/end/ except for /end/
     section = start: end: "/${start}/,/${end}/{ /${start}/p; /${end}/!p; };\n";
     script =
diff --git a/pkgs/tools/typesetting/tex/texlive/default.nix b/pkgs/tools/typesetting/tex/texlive/default.nix
index 1822ce987cf59..f8b1bdc9ea7c7 100644
--- a/pkgs/tools/typesetting/tex/texlive/default.nix
+++ b/pkgs/tools/typesetting/tex/texlive/default.nix
@@ -31,10 +31,8 @@ let
   # the set of TeX Live packages, collections, and schemes; using upstream naming
   tl = let
     orig = import ./tlpdb.nix;
-    removeSelfDep = lib.mapAttrs
-      (n: p: if p ? deps then p // { deps = lib.filter (dn: n != dn) p.deps; }
-                         else p);
-    clean = removeSelfDep (orig // {
+
+    overridden = orig // {
       # overrides of texlive.tlpdb
 
       texlive-msg-translations = orig.texlive-msg-translations // {
@@ -57,11 +55,6 @@ let
         deps = orig.collection-plaingeneric.deps ++ [ "xdvi" ];
       };
 
-      # override cyclic dependency until #167226 is fixed
-      xecjk = orig.xecjk // {
-        deps = lib.remove "ctex" orig.xecjk.deps;
-      };
-
       texdoc = orig.texdoc // {
         # build Data.tlpdb.lua (part of the 'tlType == "run"' package)
         postUnpack = ''
@@ -80,19 +73,16 @@ let
           fi
         '';
       };
-    }); # overrides
+    }; # overrides
 
-    linkDeps = lib.mapAttrs (_: attrs: attrs // lib.optionalAttrs (attrs ? deps) {
-      deps = builtins.map (n: tl.${n}) attrs.deps;
-    }); # transform [ "dep1" "dep2" ... ] into [ tl."dep1" ... ]
-
-    in lib.mapAttrs flatDeps (linkDeps clean);
+    in lib.mapAttrs mkTLPkg overridden;
     # TODO: texlive.infra for web2c config?
 
 
-  flatDeps = pname: attrs:
+  # create a TeX package: an attribute set { pkgs = [ ... ]; ... } where pkgs is a list of derivations
+  mkTLPkg = pname: attrs:
     let
-      version = attrs.version or (builtins.toString attrs.revision);
+      version = attrs.version or (toString attrs.revision);
       mkPkgV = tlType: let
         pkg = attrs // {
           sha512 = attrs.sha512.${tlType};
@@ -110,13 +100,13 @@ let
             tlType = "run";
             hasFormats = attrs.hasFormats or false;
             hasHyphens = attrs.hasHyphens or false;
+            tlDeps = map (n: tl.${n}) (attrs.deps or []);
           }
         )]
         ++ lib.optional (attrs.sha512 ? doc) (mkPkgV "doc")
         ++ lib.optional (attrs.sha512 ? source) (mkPkgV "source")
         ++ lib.optional (bin ? ${pname})
-            ( bin.${pname} // { inherit pname; tlType = "bin"; } )
-        ++ combinePkgs (attrs.deps or []);
+            ( bin.${pname} // { tlType = "bin"; } );
     };
 
   # for daily snapshots
@@ -172,6 +162,9 @@ let
           # metadata for texlive.combine
           passthru = {
             inherit pname tlType version;
+          } // lib.optionalAttrs (tlType == "run" && args ? deps) {
+            tlDeps = map (n: tl.${n}) args.deps;
+          } // lib.optionalAttrs (tlType == "run") {
             hasFormats = args.hasFormats or false;
             hasHyphens = args.hasHyphens or false;
           };
@@ -190,8 +183,20 @@ let
       );
 
   # combine a set of TL packages into a single TL meta-package
-  combinePkgs = pkgList: lib.concatLists # uniqueness is handled in `combine`
-    (builtins.map (a: a.pkgs) pkgList);
+  combinePkgs = pkgList: lib.catAttrs "pkg" (
+    let
+      # a TeX package is an attribute set { pkgs = [ ... ]; ... } where pkgs is a list of derivations
+      # the derivations make up the TeX package and optionally (for backward compatibility) its dependencies
+      tlPkgToSets = { pkgs, ... }: map ({ pname, tlType, version, outputName ? "", ... }@pkg: {
+          # outputName required to distinguish among bin.core-big outputs
+          key = "${pname}.${tlType}-${version}-${outputName}";
+          inherit pkg;
+        }) pkgs;
+      pkgListToSets = lib.concatMap tlPkgToSets; in
+    builtins.genericClosure {
+      startSet = pkgListToSets pkgList;
+      operator = { pkg, ... }: pkgListToSets (pkg.tlDeps or []);
+    });
 
 in
   tl // {
diff --git a/pkgs/tools/typesetting/typst/Cargo.lock b/pkgs/tools/typesetting/typst/Cargo.lock
index c595674ad62cd..ef58bf1cedc57 100644
--- a/pkgs/tools/typesetting/typst/Cargo.lock
+++ b/pkgs/tools/typesetting/typst/Cargo.lock
@@ -27,6 +27,46 @@ dependencies = [
 ]
 
 [[package]]
+name = "anstream"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "342258dd14006105c2b75ab1bd7543a03bdf0cfc94383303ac212a04939dff6f"
+dependencies = [
+ "anstyle",
+ "anstyle-parse",
+ "anstyle-wincon",
+ "concolor-override",
+ "concolor-query",
+ "is-terminal",
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "23ea9e81bd02e310c216d080f6223c179012256e5151c41db88d12c88a1684d2"
+
+[[package]]
+name = "anstyle-parse"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a7d1bb534e9efed14f3e5f44e7dd1a4f709384023a4165199a4241e18dff0116"
+dependencies = [
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle-wincon"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3127af6145b149f3287bb9a0d10ad9c5692dba8c53ad48285e5bec4063834fa"
+dependencies = [
+ "anstyle",
+ "windows-sys 0.45.0",
+]
+
+[[package]]
 name = "arrayref"
 version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -58,9 +98,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
 
 [[package]]
 name = "biblatex"
-version = "0.7.0"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bc17a7f4d461f93f5dbbae4c961746cb4aafb5c6c1a61089a86836614932a3c"
+checksum = "cc9fd60378277e44cd400ec5f35e768ce0d5a63d8d18ac7b1a9231196251dae5"
 dependencies = [
  "chrono",
  "numerals",
@@ -131,6 +171,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
+name = "chinese-number"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "365a2e504d6cb41e85fba5d01a6baf7f13cad4424102859193c4674e7fdff933"
+dependencies = [
+ "chinese-numerals",
+ "chinese-variant",
+ "enum-ordinalize",
+ "num-bigint",
+ "num-traits",
+]
+
+[[package]]
+name = "chinese-numerals"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "76a5a40575256b55eebe3e39fa41e53bdaea5d67ac5a7092fa8756020c798d1e"
+
+[[package]]
+name = "chinese-variant"
+version = "1.0.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aeea139b89efab957972956e5d3e4efb66a6c261f726abf6911040cc8ef700f7"
+
+[[package]]
 name = "chrono"
 version = "0.4.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -143,6 +208,67 @@ dependencies = [
 ]
 
 [[package]]
+name = "clap"
+version = "4.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "046ae530c528f252094e4a77886ee1374437744b2bff1497aa898bbddbbb29b3"
+dependencies = [
+ "clap_builder",
+ "clap_derive",
+ "once_cell",
+]
+
+[[package]]
+name = "clap_builder"
+version = "4.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "223163f58c9a40c3b0a43e1c4b50a9ce09f007ea2cb1ec258a687945b4b7929f"
+dependencies = [
+ "anstream",
+ "anstyle",
+ "bitflags",
+ "clap_lex",
+ "strsim",
+]
+
+[[package]]
+name = "clap_complete"
+version = "4.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "01c22dcfb410883764b29953103d9ef7bb8fe21b3fa1158bc99986c2067294bd"
+dependencies = [
+ "clap",
+]
+
+[[package]]
+name = "clap_derive"
+version = "4.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f9644cd56d6b87dbe899ef8b053e331c0637664e9e21a33dfcdc36093f5c5c4"
+dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.11",
+]
+
+[[package]]
+name = "clap_lex"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a2dd5a6fe8c6e3502f568a6353e5273bbb15193ad9a89e457b9970798efbea1"
+
+[[package]]
+name = "clap_mangen"
+version = "0.2.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4237e29de9c6949982ba87d51709204504fb8ed2fd38232fcb1e5bf7d4ba48c8"
+dependencies = [
+ "clap",
+ "roff",
+]
+
+[[package]]
 name = "codespan-reporting"
 version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -180,6 +306,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "concolor-override"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a855d4a1978dc52fb0536a04d384c2c0c1aa273597f08b77c8c4d3b2eec6037f"
+
+[[package]]
+name = "concolor-query"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88d11d52c3d7ca2e6d0040212be9e4dbbcd78b6447f535b6b561f449427944cf"
+dependencies = [
+ "windows-sys 0.45.0",
+]
+
+[[package]]
 name = "core-foundation-sys"
 version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -258,7 +399,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "scratch",
- "syn 2.0.4",
+ "syn 2.0.11",
 ]
 
 [[package]]
@@ -275,7 +416,7 @@ checksum = "631569015d0d8d54e6c241733f944042623ab6df7bc3be7466874b05fcdb1c5f"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.4",
+ "syn 2.0.11",
 ]
 
 [[package]]
@@ -334,6 +475,41 @@ dependencies = [
 ]
 
 [[package]]
+name = "enum-ordinalize"
+version = "3.1.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a62bb1df8b45ecb7ffa78dca1c17a438fb193eb083db0b1b494d2a61bcb5096a"
+dependencies = [
+ "num-bigint",
+ "num-traits",
+ "proc-macro2",
+ "quote",
+ "rustc_version",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "errno"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "50d6a0976c999d473fe89ad888d5a284e55366d9dc9038b1ba2aa15128c4afa0"
+dependencies = [
+ "errno-dragonfly",
+ "libc",
+ "windows-sys 0.45.0",
+]
+
+[[package]]
+name = "errno-dragonfly"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
 name = "fancy-regex"
 version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -433,9 +609,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
 
 [[package]]
 name = "hayagriva"
-version = "0.2.0"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33f939b9606af811242f770582c89a2f8bb5de4e531c0a1df9d2d4906bcbc32a"
+checksum = "d8a21ff266f0b113789bbf4a27da16330315eebbd7df8e844f95d29f92ad556d"
 dependencies = [
  "biblatex",
  "chrono",
@@ -459,6 +635,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
+name = "hermit-abi"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
+
+[[package]]
 name = "hypher"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -549,9 +731,9 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "1.9.2"
+version = "1.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399"
+checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
 dependencies = [
  "autocfg",
  "hashbrown",
@@ -578,6 +760,29 @@ dependencies = [
 ]
 
 [[package]]
+name = "io-lifetimes"
+version = "1.0.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "09270fd4fa1111bc614ed2246c7ef56239a3063d5be0d1ec3b589c505d400aeb"
+dependencies = [
+ "hermit-abi",
+ "libc",
+ "windows-sys 0.45.0",
+]
+
+[[package]]
+name = "is-terminal"
+version = "0.4.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "256017f749ab3117e93acb91063009e1f1bb56d03965b14c2c8df4eb02c524d8"
+dependencies = [
+ "hermit-abi",
+ "io-lifetimes",
+ "rustix",
+ "windows-sys 0.45.0",
+]
+
+[[package]]
 name = "isolang"
 version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -670,9 +875,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
 
 [[package]]
+name = "linux-raw-sys"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cd550e73688e6d578f0ac2119e32b797a327631a42f9433e59d02e139c8df60d"
+
+[[package]]
 name = "lipsum"
-version = "0.8.2"
-source = "git+https://github.com/reknih/lipsum#025427353ab32268daa3d96feda380a96db529c5"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c5e9ef2d2ad6fe67a59ace27c203c8d3a71d195532ee82e3bbe0d5f9a9ca541"
 dependencies = [
  "rand",
  "rand_chacha",
@@ -757,6 +969,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "num-bigint"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f"
+dependencies = [
+ "autocfg",
+ "num-integer",
+ "num-traits",
+]
+
+[[package]]
 name = "num-integer"
 version = "0.1.45"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -799,12 +1022,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
 
 [[package]]
+name = "open"
+version = "4.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "075c5203b3a2b698bc72c6c10b1f6263182135751d5013ea66e8a4b3d0562a43"
+dependencies = [
+ "pathdiff",
+]
+
+[[package]]
 name = "paste"
 version = "1.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79"
 
 [[package]]
+name = "pathdiff"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd"
+
+[[package]]
 name = "pdf-writer"
 version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -997,6 +1235,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "roff"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b833d8d034ea094b1ea68aa6d5c740e0d04bad9d16568d08ba6f76823a114316"
+
+[[package]]
 name = "roxmltree"
 version = "0.14.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1006,6 +1250,29 @@ dependencies = [
 ]
 
 [[package]]
+name = "rustc_version"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
+dependencies = [
+ "semver",
+]
+
+[[package]]
+name = "rustix"
+version = "0.37.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0e78cc525325c06b4a7ff02db283472f3c042b7ff0c391f96c6d5ac6f4f91b75"
+dependencies = [
+ "bitflags",
+ "errno",
+ "io-lifetimes",
+ "libc",
+ "linux-raw-sys",
+ "windows-sys 0.45.0",
+]
+
+[[package]]
 name = "rustversion"
 version = "1.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1058,6 +1325,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1"
 
 [[package]]
+name = "semver"
+version = "1.0.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed"
+
+[[package]]
 name = "serde"
 version = "1.0.158"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1074,7 +1347,7 @@ checksum = "e801c1712f48475582b7696ac71e0ca34ebb30e09338425384269d9717c62cad"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.4",
+ "syn 2.0.11",
 ]
 
 [[package]]
@@ -1128,6 +1401,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
 
 [[package]]
+name = "strsim"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
+
+[[package]]
 name = "strum"
 version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1189,9 +1468,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.4"
+version = "2.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c622ae390c9302e214c31013517c2061ecb2699935882c60a9b37f82f8625ae"
+checksum = "21e3787bb71465627110e7d87ed4faaa36c1f61042ee67badb9e2ef173accc40"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1251,7 +1530,7 @@ checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.4",
+ "syn 2.0.11",
 ]
 
 [[package]]
@@ -1318,7 +1597,7 @@ checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a"
 
 [[package]]
 name = "typst"
-version = "0.0.0"
+version = "0.2.0"
 dependencies = [
  "bitflags",
  "bytemuck",
@@ -1327,6 +1606,7 @@ dependencies = [
  "flate2",
  "if_chain",
  "image",
+ "indexmap",
  "log",
  "miniz_oxide 0.5.4",
  "once_cell",
@@ -1354,9 +1634,12 @@ dependencies = [
 
 [[package]]
 name = "typst-cli"
-version = "0.0.0"
+version = "0.2.0"
 dependencies = [
  "chrono",
+ "clap",
+ "clap_complete",
+ "clap_mangen",
  "codespan-reporting",
  "comemo",
  "dirs",
@@ -1364,7 +1647,7 @@ dependencies = [
  "memmap2",
  "notify",
  "once_cell",
- "pico-args",
+ "open",
  "same-file",
  "siphasher",
  "typst",
@@ -1374,7 +1657,7 @@ dependencies = [
 
 [[package]]
 name = "typst-docs"
-version = "0.0.0"
+version = "0.2.0"
 dependencies = [
  "comemo",
  "heck",
@@ -1392,8 +1675,9 @@ dependencies = [
 
 [[package]]
 name = "typst-library"
-version = "0.0.0"
+version = "0.2.0"
 dependencies = [
+ "chinese-number",
  "comemo",
  "csv",
  "ecow",
@@ -1406,6 +1690,7 @@ dependencies = [
  "roxmltree",
  "rustybuzz",
  "serde_json",
+ "serde_yaml",
  "smallvec",
  "syntect",
  "ttf-parser 0.18.1",
@@ -1420,7 +1705,7 @@ dependencies = [
 
 [[package]]
 name = "typst-macros"
-version = "0.0.0"
+version = "0.2.0"
 dependencies = [
  "heck",
  "proc-macro2",
@@ -1431,7 +1716,7 @@ dependencies = [
 
 [[package]]
 name = "typst-tests"
-version = "0.0.0"
+version = "0.2.0"
 dependencies = [
  "comemo",
  "elsa",
@@ -1585,6 +1870,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "utf8parse"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
+
+[[package]]
 name = "version_check"
 version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/pkgs/tools/typesetting/typst/default.nix b/pkgs/tools/typesetting/typst/default.nix
index ed5473892e4c3..aaae06d0ba02b 100644
--- a/pkgs/tools/typesetting/typst/default.nix
+++ b/pkgs/tools/typesetting/typst/default.nix
@@ -1,42 +1,52 @@
 { lib
 , rustPlatform
 , fetchFromGitHub
+, installShellFiles
 , stdenv
 , darwin
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "typst";
-  version = "23-03-28";
+  version = "0.2.0";
 
   src = fetchFromGitHub {
     owner = "typst";
     repo = "typst";
     rev = "v${version}";
-    hash = "sha256-0fTGbXdpzPadABWqdReQNZf2N7OMZ8cs9U5fmhfN6m4=";
+    hash = "sha256-3vNJmLmbskAzXVXjiSVDLhRcX1j3ksOgPd53W31YZ0c=";
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
       "iai-0.1.1" = "sha256-EdNzCPht5chg7uF9O8CtPWR/bzSYyfYIXNdLltqdlR0=";
-      "lipsum-0.8.2" = "sha256-deIbpn4YM7/NeuJ5Co48ivJmxwrcsbLl6c3cP3JZxAQ=";
     };
   };
 
+  nativeBuildInputs = [
+    installShellFiles
+  ];
+
   buildInputs = lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.CoreServices
   ];
 
-  cargoBuildFlags = [ "-p" "typst-cli" ];
-  cargoTestFlags = [ "-p" "typst-cli" ];
+  env = {
+    GEN_ARTIFACTS = "artifacts";
+  };
 
-  # https://github.com/typst/typst/blob/056d15a/cli/src/main.rs#L164
-  TYPST_VERSION = version;
+  postInstall = ''
+    installManPage cli/artifacts/*.1
+    installShellCompletion \
+      cli/artifacts/typst.{bash,fish} \
+      --zsh cli/artifacts/_typst
+  '';
 
   meta = with lib; {
     description = "A new markup-based typesetting system that is powerful and easy to learn";
     homepage = "https://typst.app";
+    changelog = "https://github.com/typst/typst/releases/tag/${src.rev}";
     license = licenses.asl20;
     maintainers = with maintainers; [ drupol figsoda kanashimia ];
   };
diff --git a/pkgs/tools/video/rav1e/default.nix b/pkgs/tools/video/rav1e/default.nix
index 938a686f84735..244aed92f8135 100644
--- a/pkgs/tools/video/rav1e/default.nix
+++ b/pkgs/tools/video/rav1e/default.nix
@@ -25,8 +25,6 @@ in rustPlatform.buildRustPackage rec {
 
   cargoHash = "sha256-66mVkoqMl+KNCXWsGUbu8nBrazgHP+5dTaT2Ye0btWY=";
 
-  auditable = true; # TODO: remove when this is the default
-
   depsBuildBuild = [ pkg-config ];
 
   nativeBuildInputs = [ cargo-c libgit2 nasm ];
diff --git a/pkgs/tools/virtualization/distrobuilder/default.nix b/pkgs/tools/virtualization/distrobuilder/default.nix
index a6f090be33f9e..a6ae67b07e7bf 100644
--- a/pkgs/tools/virtualization/distrobuilder/default.nix
+++ b/pkgs/tools/virtualization/distrobuilder/default.nix
@@ -8,6 +8,7 @@
 , gnutar
 , squashfsTools
 , debootstrap
+, fetchpatch
 }:
 
 let
@@ -23,7 +24,7 @@ buildGoModule rec {
   pname = "distrobuilder";
   version = "2.1";
 
-  vendorSha256 = "sha256-6LsJ6nZIo+aC8kvF+1aZD1WoXNTj9siB8QhKPVA6MSc=";
+  vendorSha256 = "sha256-yRMsf8KfpNmVUX4Rn4ZPLUPFZCT/g78MKAfgbFDPVkE=";
 
   src = fetchFromGitHub {
     owner = "lxc";
@@ -35,6 +36,21 @@ buildGoModule rec {
 
   buildInputs = bins;
 
+  patches = [
+    # go.mod update: needed to to include a newer lxd which contains
+    # https://github.com/lxc/lxd/commit/d83f061a21f509d42b7a334b97403d2a019a7b52
+    # which is needed to fix the build w/glibc-2.36.
+    (fetchpatch {
+      url = "https://github.com/lxc/distrobuilder/commit/5346bcc77dd7f141a36a8da851f016d0b929835e.patch";
+      sha256 = "sha256-H6cSbY0v/FThx72AvoAvUCs2VCYN/PQ0W4H82mQQ3SI=";
+    })
+    # Fixup to keep it building after go.mod update.
+    (fetchpatch {
+      url = "https://github.com/lxc/distrobuilder/commit/2c8cbfbf603e7446efce9f30812812336ccf4f2c.patch";
+      sha256 = "sha256-qqofghcHGosR2qycGb02c8rwErFyRRhsRKdQfyah8Ds=";
+    })
+  ];
+
   # tests require a local keyserver (mkg20001/nixpkgs branch distrobuilder-with-tests) but gpg is currently broken in tests
   doCheck = false;
 
diff --git a/pkgs/tools/virtualization/google-guest-oslogin/default.nix b/pkgs/tools/virtualization/google-guest-oslogin/default.nix
index 0e2aae22f728f..b52f37b7e57fd 100644
--- a/pkgs/tools/virtualization/google-guest-oslogin/default.nix
+++ b/pkgs/tools/virtualization/google-guest-oslogin/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "google-guest-oslogin";
-  version = "20230217.00";
+  version = "20230406.02";
 
   src = fetchFromGitHub {
     owner = "GoogleCloudPlatform";
     repo = "guest-oslogin";
     rev = version;
-    sha256 = "sha256-MZpm6JgukqdT8B1qZzKT4tO3LBS8ReoVqRGyY5ykWHw=";
+    sha256 = "sha256-Eo/wgGytOIbpEsNdAiDt88HRrddy5CopRCFJy7pLKb0=";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/virtualization/kubevirt/default.nix b/pkgs/tools/virtualization/kubevirt/default.nix
index 47c75e930dc24..ac98f7ada67bc 100644
--- a/pkgs/tools/virtualization/kubevirt/default.nix
+++ b/pkgs/tools/virtualization/kubevirt/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "kubevirt";
-  version = "0.58.0";
+  version = "0.59.0";
 
   src = fetchFromGitHub {
     owner = "kubevirt";
     repo = "kubevirt";
     rev = "v${version}";
-    sha256 = "sha256-SZ7NN93/lnN2DsNrxKEziiJsLDkFkaCbWMTcUWYiO+w=";
+    sha256 = "sha256-4mTq/V4X8eq7g+ltgFD2ZFC7k2yiszG2i2QErttPATE=";
   };
 
-  vendorSha256 = null;
+  vendorHash = null;
 
   subPackages = [ "cmd/virtctl" ];
 
diff --git a/pkgs/tools/wayland/wl-clipboard/default.nix b/pkgs/tools/wayland/wl-clipboard/default.nix
index 59f7c9110cf61..923391b799563 100644
--- a/pkgs/tools/wayland/wl-clipboard/default.nix
+++ b/pkgs/tools/wayland/wl-clipboard/default.nix
@@ -33,6 +33,6 @@ stdenv.mkDerivation rec {
     description = "Command-line copy/paste utilities for Wayland";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ dywedir ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/wayland/wpaperd/Cargo.lock b/pkgs/tools/wayland/wpaperd/Cargo.lock
index fb0b40fdcc7d1..ea07ee7e61dd4 100644
--- a/pkgs/tools/wayland/wpaperd/Cargo.lock
+++ b/pkgs/tools/wayland/wpaperd/Cargo.lock
@@ -4,9 +4,9 @@ version = 3
 
 [[package]]
 name = "addr2line"
-version = "0.17.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b"
+checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97"
 dependencies = [
  "gimli",
 ]
@@ -18,12 +18,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
-name = "adler32"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
-
-[[package]]
 name = "ahash"
 version = "0.7.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -36,14 +30,23 @@ dependencies = [
 
 [[package]]
 name = "aho-corasick"
-version = "0.7.18"
+version = "0.7.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
+checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
+name = "android_system_properties"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
+dependencies = [
+ "libc",
+]
+
+[[package]]
 name = "ansi_term"
 version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -53,12 +56,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "atomic"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b88d82667eca772c4aa12f0f1348b3ae643424c8876448f3f7bd5787032e234c"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
 name = "atty"
 version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
 dependencies = [
- "hermit-abi",
+ "hermit-abi 0.1.19",
  "libc",
  "winapi 0.3.9",
 ]
@@ -71,9 +83,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
 name = "backtrace"
-version = "0.3.65"
+version = "0.3.67"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11a17d453482a265fd5f8479f2a3f405566e6ca627837aaddb85af8b1ab8ef61"
+checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca"
 dependencies = [
  "addr2line",
  "cc",
@@ -94,7 +106,7 @@ dependencies = [
  "cexpr",
  "clang-sys",
  "clap 2.34.0",
- "env_logger 0.9.0",
+ "env_logger 0.9.3",
  "lazy_static",
  "lazycell",
  "log",
@@ -124,15 +136,15 @@ dependencies = [
 
 [[package]]
 name = "bumpalo"
-version = "3.9.1"
+version = "3.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899"
+checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535"
 
 [[package]]
 name = "bytemuck"
-version = "1.9.1"
+version = "1.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdead85bdec19c194affaeeb670c0e41fe23de31459efd1c174d049269cf02cc"
+checksum = "c041d3eab048880cb0b86b256447da3f18859a163c3b8d8893f4e6368abe6393"
 
 [[package]]
 name = "byteorder"
@@ -142,19 +154,22 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
 
 [[package]]
 name = "calloop"
-version = "0.9.3"
+version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf2eec61efe56aa1e813f5126959296933cf0700030e4314786c48779a66ab82"
+checksum = "1a59225be45a478d772ce015d9743e49e92798ece9e34eda9a6aa2a6a7f40192"
 dependencies = [
  "log",
- "nix 0.22.3",
+ "nix 0.25.1",
+ "slotmap",
+ "thiserror",
+ "vec_map",
 ]
 
 [[package]]
 name = "cc"
-version = "1.0.73"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
+checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
 
 [[package]]
 name = "cexpr"
@@ -167,9 +182,9 @@ dependencies = [
 
 [[package]]
 name = "cfg-expr"
-version = "0.10.2"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e068cb2806bbc15b439846dc16c5f89f8599f2c3e4d73d4449d38f9b2f0b6c5"
+checksum = "b0357a6402b295ca3a86bc148e84df46c02e41f41fef186bda662557ef6328aa"
 dependencies = [
  "smallvec",
 ]
@@ -187,10 +202,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
+name = "chrono"
+version = "0.4.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f"
+dependencies = [
+ "iana-time-zone",
+ "num-integer",
+ "num-traits",
+ "winapi 0.3.9",
+]
+
+[[package]]
 name = "clang-sys"
-version = "1.3.1"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4cc00842eed744b858222c4c9faf7243aafc6d33f92f96935263ef4d8a41ce21"
+checksum = "fa2e27ae6ab525c3d369ded447057bca5438d86dc3a68f6faafb8269ba82ebf3"
 dependencies = [
  "glob",
  "libc",
@@ -207,43 +234,41 @@ dependencies = [
  "atty",
  "bitflags",
  "strsim 0.8.0",
- "textwrap 0.11.0",
+ "textwrap",
  "unicode-width",
  "vec_map",
 ]
 
 [[package]]
 name = "clap"
-version = "3.1.10"
+version = "4.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3124f3f75ce09e22d1410043e1e24f2ecc44fad3afe4f08408f1f7663d68da2b"
+checksum = "ec0b0588d44d4d63a87dbd75c136c166bbfd9a86a31cb89e09906521c7d3f5e3"
 dependencies = [
- "atty",
  "bitflags",
  "clap_derive",
  "clap_lex",
- "indexmap",
- "lazy_static",
+ "is-terminal",
+ "once_cell",
  "strsim 0.10.0",
  "termcolor",
  "terminal_size",
- "textwrap 0.15.0",
 ]
 
 [[package]]
 name = "clap_complete"
-version = "3.1.2"
+version = "4.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1506b87ee866f7a53a5131f7b31fba656170d797e873d0609884cfd56b8bbda8"
+checksum = "bd125be87bf4c255ebc50de0b7f4d2a6201e8ac3dc86e39c0ad081dc5e7236fe"
 dependencies = [
- "clap 3.1.10",
+ "clap 4.1.6",
 ]
 
 [[package]]
 name = "clap_derive"
-version = "3.1.7"
+version = "4.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3aab4734e083b809aaf5794e14e756d1c798d2c69c7f7de7a09a2f5214993c1"
+checksum = "684a277d672e91966334af371f1a7b5833f9aa00b07c84e92fbce95e00208ce8"
 dependencies = [
  "heck",
  "proc-macro-error",
@@ -254,28 +279,38 @@ dependencies = [
 
 [[package]]
 name = "clap_lex"
-version = "0.1.1"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "189ddd3b5d32a70b35e7686054371742a937b0d99128e76dde6340210e966669"
+checksum = "783fe232adfca04f90f56201b26d79682d4cd2625e0bc7290b95123afe558ade"
 dependencies = [
  "os_str_bytes",
 ]
 
 [[package]]
 name = "clap_mangen"
-version = "0.1.6"
+version = "0.2.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca2ff85c3fa1e7c1a4229f7b4221f769757c3982e2afd3e6d9381d59db2c7e61"
+checksum = "48283ce8d5cd9513633949a674a0442bcb507ab61ed6533863437052ddbb494b"
 dependencies = [
- "clap 3.1.10",
+ "clap 4.1.6",
  "roff",
 ]
 
 [[package]]
+name = "codespan-reporting"
+version = "0.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
+dependencies = [
+ "termcolor",
+ "unicode-width",
+]
+
+[[package]]
 name = "color-eyre"
-version = "0.6.1"
+version = "0.6.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ebf286c900a6d5867aeff75cfee3192857bb7f24b547d4f0df2ed6baa812c90"
+checksum = "5a667583cca8c4f8436db8de46ea8233c42a7d9ae424a82d338f2e4675229204"
 dependencies = [
  "backtrace",
  "eyre",
@@ -291,6 +326,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
 
 [[package]]
+name = "core-foundation-sys"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
+
+[[package]]
 name = "crc32fast"
 version = "1.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -301,9 +342,9 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-channel"
-version = "0.5.4"
+version = "0.5.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aaa7bd5fb665c6864b5f963dd9097905c54125909c7aa94c9e18507cdbe6c53"
+checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521"
 dependencies = [
  "cfg-if 1.0.0",
  "crossbeam-utils",
@@ -311,9 +352,9 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-deque"
-version = "0.8.1"
+version = "0.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e"
+checksum = "715e8152b692bba2d374b53d4875445368fdf21a94751410af607a5ac677d1fc"
 dependencies = [
  "cfg-if 1.0.0",
  "crossbeam-epoch",
@@ -322,26 +363,68 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-epoch"
-version = "0.9.8"
+version = "0.9.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1145cf131a2c6ba0615079ab6a638f7e1973ac9c2634fcbeaaad6114246efe8c"
+checksum = "01a9af1f4c2ef74bb8aa1f7e19706bc72d03598c8a570bb5de72243c7a9d9d5a"
 dependencies = [
  "autocfg",
  "cfg-if 1.0.0",
  "crossbeam-utils",
- "lazy_static",
- "memoffset",
+ "memoffset 0.7.1",
  "scopeguard",
 ]
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.8.8"
+version = "0.8.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38"
+checksum = "4fb766fa798726286dbbb842f174001dab8abc7b627a1dd86e0b7222a95d929f"
 dependencies = [
  "cfg-if 1.0.0",
- "lazy_static",
+]
+
+[[package]]
+name = "cxx"
+version = "1.0.91"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "86d3488e7665a7a483b57e25bdd90d0aeb2bc7608c8d0346acf2ad3f1caf1d62"
+dependencies = [
+ "cc",
+ "cxxbridge-flags",
+ "cxxbridge-macro",
+ "link-cplusplus",
+]
+
+[[package]]
+name = "cxx-build"
+version = "1.0.91"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "48fcaf066a053a41a81dfb14d57d99738b767febb8b735c3016e469fac5da690"
+dependencies = [
+ "cc",
+ "codespan-reporting",
+ "once_cell",
+ "proc-macro2",
+ "quote",
+ "scratch",
+ "syn",
+]
+
+[[package]]
+name = "cxxbridge-flags"
+version = "1.0.91"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2ef98b8b717a829ca5603af80e1f9e2e48013ab227b68ef37872ef84ee479bf"
+
+[[package]]
+name = "cxxbridge-macro"
+version = "1.0.91"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "086c685979a698443656e5cf7856c95c642295a38599f12fb1ff76fb28d19892"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
 ]
 
 [[package]]
@@ -365,24 +448,15 @@ dependencies = [
 
 [[package]]
 name = "dcv-color-primitives"
-version = "0.4.0"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b58624a9256deeba461254461fd0155411330d64168b7b6e55cdb4e89e84c331"
+checksum = "1457f4dd8395fef9f61996b5783b82ed7b234b4b55e1843d04e07fded0538005"
 dependencies = [
  "paste",
  "wasm-bindgen",
 ]
 
 [[package]]
-name = "deflate"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c86f7e25f518f4b81808a2cf1c50996a61f5c2eb394b2393bd87f2a4780a432f"
-dependencies = [
- "adler32",
-]
-
-[[package]]
 name = "dirs"
 version = "4.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -419,9 +493,9 @@ checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
 
 [[package]]
 name = "either"
-version = "1.6.1"
+version = "1.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
+checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
 
 [[package]]
 name = "env_logger"
@@ -438,9 +512,9 @@ dependencies = [
 
 [[package]]
 name = "env_logger"
-version = "0.9.0"
+version = "0.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b2cf0344971ee6c64c31be0d530793fba457d322dfec2810c453d0ef228f9c3"
+checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7"
 dependencies = [
  "atty",
  "humantime",
@@ -450,6 +524,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "errno"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1"
+dependencies = [
+ "errno-dragonfly",
+ "libc",
+ "winapi 0.3.9",
+]
+
+[[package]]
+name = "errno-dragonfly"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
 name = "eyre"
 version = "0.6.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -461,39 +556,61 @@ dependencies = [
 
 [[package]]
 name = "fallible_collections"
-version = "0.4.4"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52db5973b6a19247baf19b30f41c23a1bfffc2e9ce0a5db2f60e3cd5dc8895f7"
+checksum = "3f57ccc32870366ae684be48b32a1a2e196f98a42a9b4361fe77e13fd4a34755"
 dependencies = [
  "hashbrown",
 ]
 
 [[package]]
+name = "figment"
+version = "0.10.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4e56602b469b2201400dec66a66aec5a9b8761ee97cd1b8c96ab2483fcc16cc9"
+dependencies = [
+ "atomic",
+ "serde",
+ "toml 0.5.11",
+ "uncased",
+ "version_check",
+]
+
+[[package]]
 name = "filetime"
-version = "0.2.16"
+version = "0.2.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0408e2626025178a6a7f7ffc05a25bc47103229f19c113755de7bf63816290c"
+checksum = "8a3de6e8d11b22ff9edc6d916f890800597d60f8b2da1caf2955c274638d6412"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
  "redox_syscall",
- "winapi 0.3.9",
+ "windows-sys",
+]
+
+[[package]]
+name = "flate2"
+version = "1.0.25"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841"
+dependencies = [
+ "crc32fast",
+ "miniz_oxide",
 ]
 
 [[package]]
 name = "flexi_logger"
-version = "0.22.3"
+version = "0.25.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "969940c39bc718475391e53a3a59b0157e64929c80cf83ad5dde5f770ecdc423"
+checksum = "010b5c83ec9d37d9636aa37132b777ef0818949b217109de9b88784e923bbf3a"
 dependencies = [
- "ansi_term",
  "atty",
+ "chrono",
  "glob",
  "lazy_static",
  "log",
- "rustversion",
+ "nu-ansi-term",
  "thiserror",
- "time",
 ]
 
 [[package]]
@@ -533,9 +650,9 @@ checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
 
 [[package]]
 name = "getrandom"
-version = "0.2.6"
+version = "0.2.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad"
+checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
@@ -544,30 +661,30 @@ dependencies = [
 
 [[package]]
 name = "gimli"
-version = "0.26.1"
+version = "0.27.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78cc372d058dcf6d5ecd98510e7fbc9e5aec4d21de70f65fea8fecebcd881bd4"
+checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4"
 
 [[package]]
 name = "glob"
-version = "0.3.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
+checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
 name = "hashbrown"
-version = "0.11.2"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
+checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
 dependencies = [
  "ahash",
 ]
 
 [[package]]
 name = "heck"
-version = "0.4.0"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
+checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
 name = "hermit-abi"
@@ -579,6 +696,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "hermit-abi"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "hermit-abi"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
+
+[[package]]
 name = "hotwatch"
 version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -605,10 +737,34 @@ dependencies = [
 ]
 
 [[package]]
+name = "iana-time-zone"
+version = "0.1.53"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765"
+dependencies = [
+ "android_system_properties",
+ "core-foundation-sys",
+ "iana-time-zone-haiku",
+ "js-sys",
+ "wasm-bindgen",
+ "winapi 0.3.9",
+]
+
+[[package]]
+name = "iana-time-zone-haiku"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca"
+dependencies = [
+ "cxx",
+ "cxx-build",
+]
+
+[[package]]
 name = "image"
-version = "0.24.1"
+version = "0.24.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db207d030ae38f1eb6f240d5a1c1c88ff422aa005d10f8c6c6fc5e75286ab30e"
+checksum = "69b7ea949b537b0fd0af141fff8c77690f2ce96f4f41f042ccb6c69c6c965945"
 dependencies = [
  "bytemuck",
  "byteorder",
@@ -617,7 +773,6 @@ dependencies = [
  "dcv-color-primitives",
  "jpeg-decoder",
  "mp4parse",
- "num-iter",
  "num-rational",
  "num-traits",
  "png",
@@ -631,9 +786,9 @@ checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683"
 
 [[package]]
 name = "indexmap"
-version = "1.8.1"
+version = "1.9.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee"
+checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399"
 dependencies = [
  "autocfg",
  "hashbrown",
@@ -660,6 +815,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "io-lifetimes"
+version = "1.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1abeb7a0dd0f8181267ff8adc397075586500b81b28a73e8a0208b00fc170fb3"
+dependencies = [
+ "libc",
+ "windows-sys",
+]
+
+[[package]]
 name = "iovec"
 version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -669,21 +834,36 @@ dependencies = [
 ]
 
 [[package]]
-name = "itoa"
-version = "1.0.1"
+name = "is-terminal"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
+checksum = "22e18b0a45d56fe973d6db23972bf5bc46f988a4a2385deac9cc29572f09daef"
+dependencies = [
+ "hermit-abi 0.3.1",
+ "io-lifetimes",
+ "rustix",
+ "windows-sys",
+]
 
 [[package]]
 name = "jpeg-decoder"
-version = "0.2.4"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "744c24117572563a98a7e9168a5ac1ee4a1ca7f702211258797bbe0ed0346c3c"
+checksum = "bc0000e42512c92e31c2252315bda326620a4e034105e900c98ec492fa077b3e"
 dependencies = [
  "rayon",
 ]
 
 [[package]]
+name = "js-sys"
+version = "0.3.61"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
 name = "kernel32-sys"
 version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -707,40 +887,55 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
 
 [[package]]
 name = "libc"
-version = "0.2.124"
+version = "0.2.139"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21a41fed9d98f27ab1c6d161da622a4fa35e8a54a8adc24bbf3ddd0ef70b0e50"
+checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
 
 [[package]]
 name = "libloading"
-version = "0.7.3"
+version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efbc0f03f9a775e9f6aed295c6a1ba2253c5757a9e03d55c6caa46a681abcddd"
+checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
 dependencies = [
  "cfg-if 1.0.0",
  "winapi 0.3.9",
 ]
 
 [[package]]
+name = "link-cplusplus"
+version = "1.0.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5"
+dependencies = [
+ "cc",
+]
+
+[[package]]
+name = "linux-raw-sys"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
+
+[[package]]
 name = "log"
-version = "0.4.16"
+version = "0.4.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6389c490849ff5bc16be905ae24bc913a9c8892e19b2341dbc175e14c341c2b8"
+checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
 dependencies = [
  "cfg-if 1.0.0",
 ]
 
 [[package]]
 name = "memchr"
-version = "2.4.1"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
+checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
 
 [[package]]
 name = "memmap2"
-version = "0.3.1"
+version = "0.5.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b6c2ebff6180198788f5db08d7ce3bc1d0b617176678831a7510825973e357"
+checksum = "4b182332558b18d807c4ce1ca8ca983b34c3ee32765e47b3f0f69b90355cc1dc"
 dependencies = [
  "libc",
 ]
@@ -755,6 +950,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "memoffset"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
 name = "mime"
 version = "0.3.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -768,9 +972,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.5.1"
+version = "0.6.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2b29bd4bc3f33391105ebee3589c19197c4271e3e5a9ec9bfe8127eeff8f082"
+checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"
 dependencies = [
  "adler",
 ]
@@ -835,9 +1039,9 @@ dependencies = [
 
 [[package]]
 name = "net2"
-version = "0.2.37"
+version = "0.2.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "391630d12b68002ae1e25e8f974306474966550ad82dac6886fb8910c19568ae"
+checksum = "74d0df99cfcd2530b2e694f6e17e7f37b8e26bb23983ac530c0c97408837c631"
 dependencies = [
  "cfg-if 0.1.10",
  "libc",
@@ -856,40 +1060,51 @@ dependencies = [
 
 [[package]]
 name = "nix"
-version = "0.22.3"
+version = "0.25.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4916f159ed8e5de0082076562152a76b7a1f64a01fd9d1e0fea002c37624faf"
+checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4"
 dependencies = [
+ "autocfg",
  "bitflags",
- "cc",
  "cfg-if 1.0.0",
  "libc",
- "memoffset",
+ "memoffset 0.6.5",
 ]
 
 [[package]]
 name = "nix"
-version = "0.24.0"
+version = "0.26.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f6d99b651ff9697d6710f9613a07c5b4e0d655040faf56b3b471af108d55597"
+checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a"
 dependencies = [
  "bitflags",
  "cfg-if 1.0.0",
  "libc",
- "memoffset",
+ "memoffset 0.7.1",
+ "pin-utils",
+ "static_assertions",
 ]
 
 [[package]]
 name = "nom"
-version = "7.1.1"
+version = "7.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36"
+checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
 dependencies = [
  "memchr",
  "minimal-lexical",
 ]
 
 [[package]]
+name = "nom8"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae01545c9c7fc4486ab7debaf2aad7003ac19431791868fb2e8066df97fad2f8"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
 name = "notify"
 version = "4.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -908,31 +1123,30 @@ dependencies = [
 ]
 
 [[package]]
-name = "num-integer"
-version = "0.1.44"
+name = "nu-ansi-term"
+version = "0.46.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
+checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
 dependencies = [
- "autocfg",
- "num-traits",
+ "overload",
+ "winapi 0.3.9",
 ]
 
 [[package]]
-name = "num-iter"
-version = "0.1.42"
+name = "num-integer"
+version = "0.1.45"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59"
+checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
 dependencies = [
  "autocfg",
- "num-integer",
  "num-traits",
 ]
 
 [[package]]
 name = "num-rational"
-version = "0.4.0"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d41702bd167c2df5520b384281bc111a4b5efcf7fbc4c9c222c815b07e0a6a6a"
+checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
 dependencies = [
  "autocfg",
  "num-integer",
@@ -941,64 +1155,61 @@ dependencies = [
 
 [[package]]
 name = "num-traits"
-version = "0.2.14"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
+checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
 dependencies = [
  "autocfg",
 ]
 
 [[package]]
 name = "num_cpus"
-version = "1.13.1"
+version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
-dependencies = [
- "hermit-abi",
- "libc",
-]
-
-[[package]]
-name = "num_threads"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aba1801fb138d8e85e11d0fc70baf4fe1cdfffda7c6cd34a854905df588e5ed0"
+checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b"
 dependencies = [
+ "hermit-abi 0.2.6",
  "libc",
 ]
 
 [[package]]
 name = "object"
-version = "0.28.3"
+version = "0.30.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "40bec70ba014595f99f7aa110b84331ffe1ee9aece7fe6f387cc7e3ecda4d456"
+checksum = "ea86265d3d3dcb6a27fc51bd29a4bf387fae9d2986b823079d4986af253eb439"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
 name = "once_cell"
-version = "1.10.0"
+version = "1.17.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87f3e037eac156d1775da914196f0f37741a274155e34a0b7e427c35d2a2ecb9"
+checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
 
 [[package]]
 name = "os_str_bytes"
-version = "6.0.0"
+version = "6.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee"
+
+[[package]]
+name = "overload"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e22443d1643a904602595ba1cd8f7d896afe56d26712531c5ff73a15b2fbf64"
+checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
 
 [[package]]
 name = "owo-colors"
-version = "3.3.0"
+version = "3.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e72e30578e0d0993c8ae20823dd9cff2bc5517d2f586a8aef462a581e8a03eb"
+checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f"
 
 [[package]]
 name = "paste"
-version = "1.0.7"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc"
+checksum = "d01a5bd0424d00070b0098dd17ebca6f961a959dead1dbcbbbc1d1cd8d3deeba"
 
 [[package]]
 name = "peeking_take_while"
@@ -1007,28 +1218,34 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
 
 [[package]]
+name = "pin-utils"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
+[[package]]
 name = "pkg-config"
-version = "0.3.25"
+version = "0.3.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
+checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
 
 [[package]]
 name = "png"
-version = "0.17.5"
+version = "0.17.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc38c0ad57efb786dd57b9864e5b18bae478c00c824dc55a38bbc9da95dde3ba"
+checksum = "5d708eaf860a19b19ce538740d2b4bdeeb8337fa53f7738455e706623ad5c638"
 dependencies = [
  "bitflags",
  "crc32fast",
- "deflate",
+ "flate2",
  "miniz_oxide",
 ]
 
 [[package]]
 name = "ppv-lite86"
-version = "0.2.16"
+version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872"
+checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
 
 [[package]]
 name = "proc-macro-error"
@@ -1056,18 +1273,27 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.37"
+version = "1.0.51"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6"
+dependencies = [
+ "unicode-ident",
+]
+
+[[package]]
+name = "quick-xml"
+version = "0.23.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec757218438d5fda206afc041538b2f6d889286160d649a86a24d37e1235afd1"
+checksum = "11bafc859c6815fbaffbbbf4229ecb767ac913fecb27f9ad4343662e9ef099ea"
 dependencies = [
- "unicode-xid",
+ "memchr",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.18"
+version = "1.0.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1"
+checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
 dependencies = [
  "proc-macro2",
 ]
@@ -1095,30 +1321,28 @@ dependencies = [
 
 [[package]]
 name = "rand_core"
-version = "0.6.3"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"
+checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
 dependencies = [
  "getrandom",
 ]
 
 [[package]]
 name = "rayon"
-version = "1.5.2"
+version = "1.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd249e82c21598a9a426a4e00dd7adc1d640b22445ec8545feef801d1a74c221"
+checksum = "6db3a213adf02b3bcfd2d3846bb41cb22857d131789e01df434fb7e7bc0759b7"
 dependencies = [
- "autocfg",
- "crossbeam-deque",
  "either",
  "rayon-core",
 ]
 
 [[package]]
 name = "rayon-core"
-version = "1.9.2"
+version = "1.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f51245e1e62e1f1629cbfec37b5793bbabcaeb90f30e94d2ba03564687353e4"
+checksum = "356a0625f1954f730c0201cdab48611198dc6ce21f4acff55089b5a78e6e835b"
 dependencies = [
  "crossbeam-channel",
  "crossbeam-deque",
@@ -1128,9 +1352,9 @@ dependencies = [
 
 [[package]]
 name = "redox_syscall"
-version = "0.2.13"
+version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"
+checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
 dependencies = [
  "bitflags",
 ]
@@ -1148,9 +1372,9 @@ dependencies = [
 
 [[package]]
 name = "regex"
-version = "1.5.5"
+version = "1.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a11647b6b25ff05a515cb92c365cec08801e83423a235b51e231e1808747286"
+checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -1159,9 +1383,9 @@ dependencies = [
 
 [[package]]
 name = "regex-syntax"
-version = "0.6.25"
+version = "0.6.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
+checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
 
 [[package]]
 name = "roff"
@@ -1182,10 +1406,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
 
 [[package]]
-name = "rustversion"
-version = "1.0.6"
+name = "rustix"
+version = "0.36.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2cc38e8fa666e2de3c4aba7edeb5ffc5246c1c2ed0e3d17e560aeeba736b23f"
+checksum = "f43abb88211988493c1abb44a70efa56ff0ce98f233b7b276146f1f3f7ba9644"
+dependencies = [
+ "bitflags",
+ "errno",
+ "io-lifetimes",
+ "libc",
+ "linux-raw-sys",
+ "windows-sys",
+]
 
 [[package]]
 name = "same-file"
@@ -1197,25 +1429,37 @@ dependencies = [
 ]
 
 [[package]]
+name = "scoped-tls"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
+
+[[package]]
 name = "scopeguard"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
 
 [[package]]
+name = "scratch"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ddccb15bcce173023b3fedd9436f882a0739b8dfb45e4f6b6002bee5929f61b2"
+
+[[package]]
 name = "serde"
-version = "1.0.136"
+version = "1.0.152"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789"
+checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.136"
+version = "1.0.152"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9"
+checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1223,6 +1467,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "serde_spanned"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0efd8caf556a6cebd3b285caf480045fcc1ac04f6bd786b09a6f11af30c4fcf4"
+dependencies = [
+ "serde",
+]
+
+[[package]]
 name = "shlex"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1230,21 +1483,32 @@ checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
 
 [[package]]
 name = "slab"
-version = "0.4.6"
+version = "0.4.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "slotmap"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32"
+checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342"
+dependencies = [
+ "version_check",
+]
 
 [[package]]
 name = "smallvec"
-version = "1.8.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83"
+checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
 
 [[package]]
 name = "smithay-client-toolkit"
-version = "0.15.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a28f16a97fa0e8ce563b2774d1e732dd5d4025d2772c5dba0a41a0f90a29da3"
+version = "0.16.0"
+source = "git+https://github.com/Smithay/client-toolkit#a3d1af852a607587114ccc6631c87046ecc898d3"
 dependencies = [
  "bitflags",
  "calloop",
@@ -1252,11 +1516,15 @@ dependencies = [
  "lazy_static",
  "log",
  "memmap2",
- "nix 0.22.3",
+ "nix 0.26.2",
  "pkg-config",
+ "thiserror",
+ "wayland-backend",
  "wayland-client",
  "wayland-cursor",
  "wayland-protocols",
+ "wayland-protocols-wlr",
+ "wayland-scanner",
 ]
 
 [[package]]
@@ -1279,45 +1547,45 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
 name = "syn"
-version = "1.0.91"
+version = "1.0.107"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b683b2b825c8eef438b77c36a06dc262294da3d5a5813fac20da149241dcd44d"
+checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5"
 dependencies = [
  "proc-macro2",
  "quote",
- "unicode-xid",
+ "unicode-ident",
 ]
 
 [[package]]
 name = "system-deps"
-version = "6.0.2"
+version = "6.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1a45a1c4c9015217e12347f2a411b57ce2c4fc543913b14b6fe40483328e709"
+checksum = "2955b1fe31e1fa2fbd1976b71cc69a606d7d4da16f6de3333d0c92d51419aeff"
 dependencies = [
  "cfg-expr",
  "heck",
  "pkg-config",
- "toml",
+ "toml 0.5.11",
  "version-compare",
 ]
 
 [[package]]
 name = "termcolor"
-version = "1.1.3"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
+checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
 dependencies = [
  "winapi-util",
 ]
 
 [[package]]
 name = "terminal_size"
-version = "0.1.17"
+version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "633c1a546cee861a1a6d0dc69ebeca693bf4296661ba7852b9d21d159e0506df"
+checksum = "4c9afddd2cec1c0909f06b00ef33f94ab2cc0578c4a610aa208ddfec8aa2b43a"
 dependencies = [
- "libc",
- "winapi 0.3.9",
+ "rustix",
+ "windows-sys",
 ]
 
 [[package]]
@@ -1330,28 +1598,19 @@ dependencies = [
 ]
 
 [[package]]
-name = "textwrap"
-version = "0.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1141d4d61095b28419e22cb0bbf02755f5e54e0526f97f1e3d1d160e60885fb"
-dependencies = [
- "terminal_size",
-]
-
-[[package]]
 name = "thiserror"
-version = "1.0.30"
+version = "1.0.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "854babe52e4df1653706b98fcfc05843010039b406875930a70e4d9644e5c417"
+checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.30"
+version = "1.0.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa32fd3f627f367fe16f893e2597ae3c05020f8bba2666a4e6ea73d377e5714b"
+checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1359,35 +1618,55 @@ dependencies = [
 ]
 
 [[package]]
-name = "time"
-version = "0.3.9"
+name = "toml"
+version = "0.5.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2702e08a7a860f005826c6815dcac101b19b5eb330c27fe4a5928fec1d20ddd"
+checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
 dependencies = [
- "itoa",
- "libc",
- "num_threads",
- "time-macros",
+ "serde",
 ]
 
 [[package]]
-name = "time-macros"
-version = "0.2.4"
+name = "toml"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42657b1a6f4d817cda8e7a0ace261fe0cc946cf3a80314390b22cc61ae080792"
+checksum = "f7afcae9e3f0fe2c370fd4657108972cbb2fa9db1b9f84849cefd80741b01cb6"
+dependencies = [
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit",
+]
 
 [[package]]
-name = "timer"
-version = "0.2.0"
-source = "git+https://github.com/danyspin97/timer.rs#f99861cacd5f092b9f1099c5a025a0ba7492139a"
+name = "toml_datetime"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3ab8ed2edee10b50132aed5f331333428b011c99402b5a534154ed15746f9622"
+dependencies = [
+ "serde",
+]
 
 [[package]]
-name = "toml"
-version = "0.5.9"
+name = "toml_edit"
+version = "0.19.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
+checksum = "5e6a7712b49e1775fb9a7b998de6635b299237f48b404dde71704f2e0e7f37e5"
 dependencies = [
+ "indexmap",
+ "nom8",
  "serde",
+ "serde_spanned",
+ "toml_datetime",
+]
+
+[[package]]
+name = "uncased"
+version = "0.9.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "09b01702b0fd0b3fadcf98e098780badda8742d4f4a7676615cad90e8ac73622"
+dependencies = [
+ "version_check",
 ]
 
 [[package]]
@@ -1400,16 +1679,16 @@ dependencies = [
 ]
 
 [[package]]
-name = "unicode-width"
-version = "0.1.9"
+name = "unicode-ident"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
+checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc"
 
 [[package]]
-name = "unicode-xid"
-version = "0.2.2"
+name = "unicode-width"
+version = "0.1.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
+checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
 
 [[package]]
 name = "vec_map"
@@ -1419,9 +1698,9 @@ checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
 
 [[package]]
 name = "version-compare"
-version = "0.1.0"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe88247b92c1df6b6de80ddc290f3976dbdf2f5f5d3fd049a9fb598c6dd5ca73"
+checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
 
 [[package]]
 name = "version_check"
@@ -1442,15 +1721,15 @@ dependencies = [
 
 [[package]]
 name = "wasi"
-version = "0.10.2+wasi-snapshot-preview1"
+version = "0.11.0+wasi-snapshot-preview1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
+checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.80"
+version = "0.2.84"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "27370197c907c55e3f1a9fbe26f44e937fe6451368324e009cba39e139dc08ad"
+checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b"
 dependencies = [
  "cfg-if 1.0.0",
  "wasm-bindgen-macro",
@@ -1458,13 +1737,13 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.80"
+version = "0.2.84"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53e04185bfa3a779273da532f5025e33398409573f348985af9a1cbf3774d3f4"
+checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9"
 dependencies = [
  "bumpalo",
- "lazy_static",
  "log",
+ "once_cell",
  "proc-macro2",
  "quote",
  "syn",
@@ -1473,9 +1752,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.80"
+version = "0.2.84"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17cae7ff784d7e83a2fe7611cfe766ecf034111b49deb850a3dc7699c08251f5"
+checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -1483,9 +1762,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.80"
+version = "0.2.84"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99ec0dc7a4756fffc231aab1b9f2f578d23cd391390ab27f952ae0c9b3ece20b"
+checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1496,89 +1775,106 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.80"
+version = "0.2.84"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744"
+checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
 
 [[package]]
-name = "wayland-client"
-version = "0.29.4"
+name = "wayland-backend"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91223460e73257f697d9e23d401279123d36039a3f7a449e983f123292d4458f"
+checksum = "79ebd48bfc1178c9190c7ff80cc822b3335ffc83141e9aa723168f377257623e"
 dependencies = [
- "bitflags",
+ "cc",
  "downcast-rs",
- "libc",
- "nix 0.22.3",
- "wayland-commons",
- "wayland-scanner",
+ "io-lifetimes",
+ "nix 0.26.2",
+ "scoped-tls",
+ "smallvec",
  "wayland-sys",
 ]
 
 [[package]]
-name = "wayland-commons"
-version = "0.29.4"
+name = "wayland-client"
+version = "0.30.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94f6e5e340d7c13490eca867898c4cec5af56c27a5ffe5c80c6fc4708e22d33e"
+checksum = "85bde68449abab1a808e5227b6e295f4ae3680911eb7711b4a2cb90141edb780"
 dependencies = [
- "nix 0.22.3",
- "once_cell",
- "smallvec",
- "wayland-sys",
+ "bitflags",
+ "calloop",
+ "log",
+ "nix 0.26.2",
+ "wayland-backend",
+ "wayland-scanner",
 ]
 
 [[package]]
 name = "wayland-cursor"
-version = "0.29.4"
+version = "0.30.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c52758f13d5e7861fc83d942d3d99bf270c83269575e52ac29e5b73cb956a6bd"
+checksum = "2d0c3a0d5b4b688b07b0442362d3ed6bf04724fcc16cd69ab6285b90dbc487aa"
 dependencies = [
- "nix 0.22.3",
+ "nix 0.26.2",
  "wayland-client",
  "xcursor",
 ]
 
 [[package]]
 name = "wayland-protocols"
-version = "0.29.4"
+version = "0.30.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7fefbeb8a360abe67ab7c2efe1d297a1a50ee011f5460791bc18870c26bb84e2"
+dependencies = [
+ "bitflags",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-scanner",
+]
+
+[[package]]
+name = "wayland-protocols-wlr"
+version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60147ae23303402e41fe034f74fb2c35ad0780ee88a1c40ac09a3be1e7465741"
+checksum = "fce991093320e4a6a525876e6b629ab24da25f9baef0c2e0080ad173ec89588a"
 dependencies = [
  "bitflags",
+ "wayland-backend",
  "wayland-client",
- "wayland-commons",
+ "wayland-protocols",
  "wayland-scanner",
 ]
 
 [[package]]
 name = "wayland-scanner"
-version = "0.29.4"
+version = "0.30.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39a1ed3143f7a143187156a2ab52742e89dac33245ba505c17224df48939f9e0"
+checksum = "4834c14b3edf1d9986c83ca79b1e7e3afbe9874c7c144702f6467063259ce45d"
 dependencies = [
  "proc-macro2",
+ "quick-xml",
  "quote",
- "xml-rs",
 ]
 
 [[package]]
 name = "wayland-sys"
-version = "0.29.4"
+version = "0.30.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9341df79a8975679188e37dab3889bfa57c44ac2cb6da166f519a81cbe452d4"
+checksum = "96b2a02ac608e07132978689a6f9bf4214949c85998c247abadd4f4129b1aa06"
 dependencies = [
+ "dlib",
+ "log",
  "pkg-config",
 ]
 
 [[package]]
 name = "which"
-version = "4.2.5"
+version = "4.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c4fb54e6113b6a8772ee41c3404fb0301ac79604489467e0a9ce1f3e97c24ae"
+checksum = "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269"
 dependencies = [
  "either",
- "lazy_static",
  "libc",
+ "once_cell",
 ]
 
 [[package]]
@@ -1625,13 +1921,81 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
+name = "windows-sys"
+version = "0.45.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
+dependencies = [
+ "windows-targets",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.42.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7"
+dependencies = [
+ "windows_aarch64_gnullvm",
+ "windows_aarch64_msvc",
+ "windows_i686_gnu",
+ "windows_i686_msvc",
+ "windows_x86_64_gnu",
+ "windows_x86_64_gnullvm",
+ "windows_x86_64_msvc",
+]
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.42.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.42.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.42.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.42.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.42.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.42.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.42.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
+
+[[package]]
 name = "wpaperd"
-version = "0.2.0"
+version = "0.3.0"
 dependencies = [
- "clap 3.1.10",
+ "clap 4.1.6",
  "clap_complete",
  "clap_mangen",
  "color-eyre",
+ "dirs",
+ "figment",
  "flexi_logger",
  "hotwatch",
  "humantime-serde",
@@ -1639,12 +2003,11 @@ dependencies = [
  "log",
  "mime",
  "new_mime_guess",
- "nix 0.24.0",
+ "nix 0.26.2",
  "rand",
  "serde",
  "smithay-client-toolkit",
- "timer",
- "toml",
+ "toml 0.7.2",
  "walkdir",
  "xdg",
 ]
@@ -1676,9 +2039,3 @@ checksum = "0c4583db5cbd4c4c0303df2d15af80f0539db703fa1c68802d4cbbd2dd0f88f6"
 dependencies = [
  "dirs",
 ]
-
-[[package]]
-name = "xml-rs"
-version = "0.8.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3"
diff --git a/pkgs/tools/wayland/wpaperd/default.nix b/pkgs/tools/wayland/wpaperd/default.nix
index aff9b54334dfc..76a9bd5e24dd8 100644
--- a/pkgs/tools/wayland/wpaperd/default.nix
+++ b/pkgs/tools/wayland/wpaperd/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wpaperd";
-  version = "0.2.0";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "danyspin97";
     repo = pname;
     rev = version;
-    sha256 = "n1zlC2afog0UazsJEBAzXpnhVDeP3xqpNGXlJ65umHQ=";
+    sha256 = "cgjHCSBrkX3aoz42qBS/1JUGhc7sZKarKByntp7ubaQ=";
   };
 
   nativeBuildInputs = [
@@ -21,10 +21,15 @@ rustPlatform.buildRustPackage rec {
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "timer-0.2.0" = "sha256-yofy6Wszf6EwNGGdVDWNG0RcbpvBgv5/BdOjAFxghwc=";
+      "smithay-client-toolkit-0.16.0" = "iPDL7pxTez4EnIBaUH25lLSWpu3RRL2QBF9pfdTDsP8=";
     };
   };
 
+  postPatch = ''
+    rm Cargo.lock
+    ln -s ${./Cargo.lock} Cargo.lock
+  '';
+
   meta = with lib; {
     description = "Minimal wallpaper daemon for Wayland";
     longDescription = ''