about summary refs log tree commit diff
path: root/nixpkgs/pkgs/tools
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/tools')
-rw-r--r--nixpkgs/pkgs/tools/X11/gobble/default.nix37
-rw-r--r--nixpkgs/pkgs/tools/admin/aliyun-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/amazon-ec2-utils/default.nix24
-rw-r--r--nixpkgs/pkgs/tools/admin/ansible/lint.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/aws-sso-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/awscli2/default.nix33
-rw-r--r--nixpkgs/pkgs/tools/admin/azure-cli/python-packages.nix69
-rw-r--r--nixpkgs/pkgs/tools/admin/balena-cli/default.nix112
-rw-r--r--nixpkgs/pkgs/tools/admin/coldsnap/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/admin/copilot-cli/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/admin/eksctl/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/admin/gimme-aws-creds/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/admin/granted/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/admin/hop-cli/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/admin/lxd/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/qovery-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/simplotask/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/admin/stripe-cli/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/admin/syft/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/archivers/unar/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/audio/bark/default.nix29
-rw-r--r--nixpkgs/pkgs/tools/audio/headsetcontrol/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/audio/mpd-mpris/default.nix26
-rw-r--r--nixpkgs/pkgs/tools/audio/stt/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/audio/vgmtools/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/backup/awsbck/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/backup/gphotos-sync/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/backup/pgbackrest/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/backup/rdiff-backup/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/compression/asar/default.nix48
-rw-r--r--nixpkgs/pkgs/tools/compression/asar/package.json62
-rw-r--r--nixpkgs/pkgs/tools/filesystems/catcli/default.nix26
-rw-r--r--nixpkgs/pkgs/tools/filesystems/ceph/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/filesystems/fuse-overlayfs/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/filesystems/garage/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/filesystems/mount-zip/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/filesystems/stratisd/Cargo.lock26
-rw-r--r--nixpkgs/pkgs/tools/filesystems/stratisd/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/games/ps3iso-utils/default.nix38
-rw-r--r--nixpkgs/pkgs/tools/graphics/pikchr/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/graphics/spirv-cross/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/graphics/svgbob/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/graphics/termimage/default.nix37
-rw-r--r--nixpkgs/pkgs/tools/graphics/textplots/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/graphics/ueberzugpp/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/graphics/vips/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/graphics/vulkan-extension-layer/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/add-missing-macro-definition.patch26
-rw-r--r--nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix16
-rw-r--r--nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/skip-qnx-extension.patch13
-rw-r--r--nixpkgs/pkgs/tools/graphics/vulkan-tools/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table-others/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/birdfont/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/cfonts/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/misc/charasay/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/citron/default.nix35
-rw-r--r--nixpkgs/pkgs/tools/misc/ckb-next/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/misc/clac/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/crudini/default.nix45
-rw-r--r--nixpkgs/pkgs/tools/misc/ddccontrol/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/debootstrap/default.nix39
-rw-r--r--nixpkgs/pkgs/tools/misc/diffoci/default.nix27
-rw-r--r--nixpkgs/pkgs/tools/misc/diffoscope/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/ent/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/esptool/default.nix22
-rw-r--r--nixpkgs/pkgs/tools/misc/eza/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/faketty/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/fastfetch/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/file/32-bit-time_t.patch38
-rw-r--r--nixpkgs/pkgs/tools/misc/file/default.nix17
-rw-r--r--nixpkgs/pkgs/tools/misc/file/pyzip.patch36
-rw-r--r--nixpkgs/pkgs/tools/misc/flexoptix-app/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/fsearch/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/fuc/add_missing_feature.patch11
-rw-r--r--nixpkgs/pkgs/tools/misc/fuc/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/getoptions/default.nix3
-rw-r--r--nixpkgs/pkgs/tools/misc/gh-dash/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/goreleaser/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/gradescope-submit/default.nix35
-rw-r--r--nixpkgs/pkgs/tools/misc/grex/default.nix12
-rw-r--r--nixpkgs/pkgs/tools/misc/h/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/hdf5/default.nix16
-rw-r--r--nixpkgs/pkgs/tools/misc/hoard/default.nix28
-rw-r--r--nixpkgs/pkgs/tools/misc/hyfetch/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/ksnip/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/lighthouse-steamvr/Cargo.lock760
-rw-r--r--nixpkgs/pkgs/tools/misc/lighthouse-steamvr/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/lsd/default.nix26
-rw-r--r--nixpkgs/pkgs/tools/misc/moar/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/ncdu/1.nix5
-rw-r--r--nixpkgs/pkgs/tools/misc/node-glob/default.nix29
-rw-r--r--nixpkgs/pkgs/tools/misc/nomino/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/misc/ollama/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/pgbadger/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/misc/pgmetrics/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/phrase-cli/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/ripdrag/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/routino/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/misc/rpi-imager/default.nix69
-rw-r--r--nixpkgs/pkgs/tools/misc/rpi-imager/lsblkCheckFix.patch8
-rw-r--r--nixpkgs/pkgs/tools/misc/shopware-cli/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/misc/slingshot/default.nix27
-rw-r--r--nixpkgs/pkgs/tools/misc/smenu/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/spacer/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/tgpt/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/tlp/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/misc/tlp/patches/0001-makefile-correctly-sed-paths.patch12
-rw-r--r--nixpkgs/pkgs/tools/misc/tlp/patches/0002-reintroduce-tlp-sleep-service.patch18
-rw-r--r--nixpkgs/pkgs/tools/misc/tmuxp/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/misc/url-parser/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/misc/usbimager/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/misc/vial/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/misc/viddy/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/vrc-get/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/misc/wasm-tools/Cargo.lock2474
-rw-r--r--nixpkgs/pkgs/tools/misc/wasm-tools/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/misc/xcp/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/misc/xdaliclock/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/misc/zellij/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/bully/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/networking/clash-meta/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/containerlab/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/dd-agent/datadog-agent.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/dnsperf/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/networking/easyrsa/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/frp/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/getmail6/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/grpc_cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/haproxy/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/networking/httplz/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/ipinfo/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/juicity/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/networking/lxi-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/mockoon/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/mu/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/netbird/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/networkmanager/dmenu/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/ntpd-rs/default.nix45
-rw-r--r--nixpkgs/pkgs/tools/networking/ocserv/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/oneshot/default.nix42
-rw-r--r--nixpkgs/pkgs/tools/networking/ookla-speedtest/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/openssh/common.nix5
-rw-r--r--nixpkgs/pkgs/tools/networking/s5cmd/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/shadowsocks-rust/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/networking/sing-box/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/slirp4netns/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/smartdns/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/speedtest-go/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/ssl-proxy/default.nix31
-rw-r--r--nixpkgs/pkgs/tools/networking/subnetcalc/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/traceroute/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/networking/wormhole-william/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/networking/zerotierone/Cargo.lock665
-rw-r--r--nixpkgs/pkgs/tools/networking/zerotierone/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/networking/zrok/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/package-management/apt/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/package-management/dpkg/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/package-management/nix-doc/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/package-management/nixpkgs-review/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/package-management/npm-check-updates/default.nix27
-rw-r--r--nixpkgs/pkgs/tools/package-management/pkg/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/package-management/poetry/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/apachetomcatscanner/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/bitwarden/cli.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/chopchop/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/clairvoyance/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/cosign/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/earlybird/default.nix20
-rw-r--r--nixpkgs/pkgs/tools/security/earlybird/fix-go.mod-dependency.patch13
-rw-r--r--nixpkgs/pkgs/tools/security/exploitdb/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/flare-floss/default.nix34
-rw-r--r--nixpkgs/pkgs/tools/security/grype/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/imdshift/default.nix39
-rw-r--r--nixpkgs/pkgs/tools/security/ipscan/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/security/jwx/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/kubernetes-polaris/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/Gemfile2
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock53
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/metasploit/gemset.nix74
-rw-r--r--nixpkgs/pkgs/tools/security/mpw/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/security/nbtscanner/Cargo.lock.patch176
-rw-r--r--nixpkgs/pkgs/tools/security/nbtscanner/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/security/nitrokey-app/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/notation/default.nix20
-rw-r--r--nixpkgs/pkgs/tools/security/nuclei/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/ospd-openvas/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/pass/default.nix7
-rw-r--r--nixpkgs/pkgs/tools/security/qdigidoc/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/security/semgrep/common.nix14
-rw-r--r--nixpkgs/pkgs/tools/security/sigma-cli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/spire/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/ssh-to-age/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/swtpm/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/security/tlsx/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/trufflehog/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/uncover/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/security/vals/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/security/web-eid-app/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/system/bottom/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/daemon/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/htop/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/system/lr/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/netdata/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/nvitop/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/nvtop/default.nix24
-rw-r--r--nixpkgs/pkgs/tools/system/rex/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/rsyslog/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/sg3_utils/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/stress-ng/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/thermald/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/difftastic/Cargo.lock71
-rw-r--r--nixpkgs/pkgs/tools/text/difftastic/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/dos2unix/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/gtree/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/languagetool-rust/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/text/mdbook-i18n-helpers/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/text/mmdoc/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/riffdiff/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/text/tesh/default.nix22
-rw-r--r--nixpkgs/pkgs/tools/text/ugrep/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/text/xml/xml2/default.nix19
-rw-r--r--nixpkgs/pkgs/tools/text/yx/default.nix31
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tex/texlive/build-texlive-package.nix2
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tex/texlive/combine.nix20
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tex/texlive/default.nix422
-rw-r--r--nixpkgs/pkgs/tools/typesetting/tex/texlive/tlpdb-overrides.nix411
-rw-r--r--nixpkgs/pkgs/tools/typesetting/typst/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/typesetting/typstfmt/Cargo.lock88
-rw-r--r--nixpkgs/pkgs/tools/typesetting/typstfmt/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/typesetting/xmlroff/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/virtualization/awsebcli/default.nix9
-rw-r--r--nixpkgs/pkgs/tools/virtualization/google-guest-oslogin/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/virtualization/mkosi/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/virtualization/reg/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/wayland/shotman/Cargo.lock1148
-rw-r--r--nixpkgs/pkgs/tools/wayland/shotman/default.nix13
-rw-r--r--nixpkgs/pkgs/tools/wayland/stacktile/default.nix44
-rw-r--r--nixpkgs/pkgs/tools/wayland/wl-clipboard/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/wayland/wl-screenrec/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/wayland/wlr-which-key/default.nix6
242 files changed, 3144 insertions, 5799 deletions
diff --git a/nixpkgs/pkgs/tools/X11/gobble/default.nix b/nixpkgs/pkgs/tools/X11/gobble/default.nix
new file mode 100644
index 000000000000..46b1b2c4b482
--- /dev/null
+++ b/nixpkgs/pkgs/tools/X11/gobble/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, xorg
+, installShellFiles
+, pandoc
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "gobble";
+  version = "1.3";
+
+  src = fetchFromGitHub {
+    owner = "EmperorPenguin18";
+    repo = pname;
+    rev = version;
+    hash = "sha256-g4154Axvjp9jbE0lvMeNGM+v2UxkAsZqt9kPv5bhVK8=";
+  };
+
+  cargoHash = "sha256-5xsMLOYTKQc1bHHQsk9L4rHMVNBFOzIMxD+1qaMaNbQ=";
+
+  buildInputs = [ xorg.libxcb ];
+  nativeBuildInputs = [ pandoc installShellFiles ];
+
+  postInstall = ''
+    pandoc gobble.1.md -s -t man -o gobble.1
+    installManPage gobble.1
+  '';
+
+  meta = {
+    description = "gobbles your terminal";
+    homepage = "https://github.com/EmperorPenguin18/gobble";
+    license = lib.licenses.gpl3Only;
+    maintainers = with lib.maintainers; [ vuimuich ];
+    platforms = lib.platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/admin/aliyun-cli/default.nix b/nixpkgs/pkgs/tools/admin/aliyun-cli/default.nix
index 402af6119636..d237e4f748f9 100644
--- a/nixpkgs/pkgs/tools/admin/aliyun-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/aliyun-cli/default.nix
@@ -2,14 +2,14 @@
 
 buildGoModule rec {
   pname = "aliyun-cli";
-  version = "3.0.177";
+  version = "3.0.179";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "aliyun";
     repo = pname;
     fetchSubmodules = true;
-    sha256 = "sha256-A63cRbIEXsX8mmbbXqsT7athWN8vrZLRnUyurb0HNDA=";
+    sha256 = "sha256-AQsmk5Kl/uGUeT3hNEuqg28q+hXtkz3E7J2Q0FOdr8U=";
   };
 
   vendorHash = "sha256-81z4bflVzDCl6IiYnTwFPsLHXq87OiKv4aDmZq05Nqc=";
diff --git a/nixpkgs/pkgs/tools/admin/amazon-ec2-utils/default.nix b/nixpkgs/pkgs/tools/admin/amazon-ec2-utils/default.nix
index 1225005cfb79..ed472b2a930e 100644
--- a/nixpkgs/pkgs/tools/admin/amazon-ec2-utils/default.nix
+++ b/nixpkgs/pkgs/tools/admin/amazon-ec2-utils/default.nix
@@ -1,30 +1,33 @@
 { stdenv
 , lib
 , fetchFromGitHub
-, curl
-, gawk
+, bash
 , python3
 , installShellFiles
-, bash
+, gawk
+, curl
 }:
+
 stdenv.mkDerivation rec {
   pname = "amazon-ec2-utils";
-  version = "2.0";
+  version = "2.1.0";
 
   src = fetchFromGitHub {
-    owner = "aws";
+    owner = "amazonlinux";
     repo = "amazon-ec2-utils";
-    rev = "v${version}";
-    hash = "sha256-u1rHBV8uVcCywvQNYagtDleYB12tmhyqDbXTBzt45dk=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-Yr6pVwyvyVGV4xrjL7VFSkRH8d1w8VLPMTVjXfneJUM=";
   };
 
   outputs = [ "out" "man" ];
 
   strictDeps = true;
+
   buildInputs = [
-    python3
     bash
+    python3
   ];
+
   nativeBuildInputs = [
     installShellFiles
   ];
@@ -66,9 +69,10 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = "https://github.com/aws/amazon-ec2-utils";
+    changelog = "https://github.com/amazonlinux/amazon-ec2-utils/releases/tag/v${version}";
     description = "Contains a set of utilities and settings for Linux deployments in EC2";
+    homepage = "https://github.com/amazonlinux/amazon-ec2-utils";
     license = licenses.mit;
-    maintainers = with maintainers; [ ketzacoatl thefloweringash ];
+    maintainers = with maintainers; [ ketzacoatl thefloweringash anthonyroussel ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/admin/ansible/lint.nix b/nixpkgs/pkgs/tools/admin/ansible/lint.nix
index f62b3f4b3941..c28892bc8260 100644
--- a/nixpkgs/pkgs/tools/admin/ansible/lint.nix
+++ b/nixpkgs/pkgs/tools/admin/ansible/lint.nix
@@ -6,12 +6,12 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "ansible-lint";
-  version = "6.17.1";
+  version = "6.18.0";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-804zPzVVyZ/zTHePYdRw0eOh623HYJDQ3XuVsslHRcI=";
+    hash = "sha256-VHRO5/j9DsOAUfC23yFTUjk5o5HuS7SPCIW1/N2C+bk=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/admin/aws-sso-cli/default.nix b/nixpkgs/pkgs/tools/admin/aws-sso-cli/default.nix
index c381d05bb4ff..18b312c6a1c0 100644
--- a/nixpkgs/pkgs/tools/admin/aws-sso-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/aws-sso-cli/default.nix
@@ -6,13 +6,13 @@
 }:
 buildGoModule rec {
   pname = "aws-sso-cli";
-  version = "1.12.0";
+  version = "1.13.0";
 
   src = fetchFromGitHub {
     owner = "synfinatic";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-RshR1GA3BvvPwwkVxrM98FfgW3kNaMM0Vqr7iEuoFek=";
+    hash = "sha256-mINJtjSOmU6oUNIPa5Hl5fG5FqTFM8AJg9jH8WmIAHE=";
   };
   vendorHash = "sha256-skFENAr5XjdKoAyVwXYJVZH+IviqfyZmMIdgHq+7IPs=";
 
diff --git a/nixpkgs/pkgs/tools/admin/awscli2/default.nix b/nixpkgs/pkgs/tools/admin/awscli2/default.nix
index ef44da70227b..c2465ea95914 100644
--- a/nixpkgs/pkgs/tools/admin/awscli2/default.nix
+++ b/nixpkgs/pkgs/tools/admin/awscli2/default.nix
@@ -3,7 +3,6 @@
 , groff
 , less
 , fetchFromGitHub
-, fetchpatch
 , nix-update-script
 , testers
 , awscli2
@@ -24,31 +23,27 @@ let
 in
 with py.pkgs; buildPythonApplication rec {
   pname = "awscli2";
-  version = "2.13.7"; # N.B: if you change this, check if overrides are still up-to-date
+  version = "2.13.13"; # N.B: if you change this, check if overrides are still up-to-date
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "aws";
     repo = "aws-cli";
-    rev = version;
-    hash = "sha256-SQ9ggHSpQioptic5qjrhCB63t9pld7KGAeCNtq4OJyQ=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-0Wx/Ze6W0Fa8OzM79PFu2liSxl1UwuUqIoYT0WhTk5k=";
   };
 
-  patches = [
-    # https://github.com/aws/aws-cli/pull/7912
-    (fetchpatch {
-      name = "update-flit-core.patch";
-      url = "https://github.com/aws/aws-cli/commit/83412a4b2ec750bada640a34a87bfe07ce41fb50.patch";
-      hash = "sha256-uhO6aOSptsARYWuXXEFhx+6rCW5/uGn2KQ15BnhzH68=";
-    })
-  ];
-
   postPatch = ''
     substituteInPlace pyproject.toml \
       --replace 'cryptography>=3.3.2,<40.0.2' 'cryptography>=3.3.2' \
-      --replace 'flit_core>=3.7.1,<3.8.1' 'flit_core>=3.7.1'
+      --replace 'flit_core>=3.7.1,<3.8.1' 'flit_core>=3.7.1' \
+      --replace 'awscrt>=0.16.4,<=0.16.16' 'awscrt>=0.16.4'
+
+    substituteInPlace requirements-base.txt \
+      --replace "wheel==0.38.4" "wheel>=0.38.4" \
+      --replace "flit_core==3.8.0" "flit_core>=3.8.0"
 
-    # upstream needs pip to build and install dependencies and validates this
+    # Upstream needs pip to build and install dependencies and validates this
     # with a configure script, but we don't as we provide all of the packages
     # through PYTHONPATH
     sed -i '/pip>=/d' requirements/bootstrap.txt
@@ -61,18 +56,18 @@ with py.pkgs; buildPythonApplication rec {
   propagatedBuildInputs = [
     awscrt
     bcdoc
+    botocore
     colorama
     cryptography
     distro
     docutils
     groff
+    jmespath
     less
     prompt-toolkit
+    python-dateutil
     pyyaml
-    rsa
     ruamel-yaml
-    python-dateutil
-    jmespath
     urllib3
   ];
 
@@ -131,9 +126,9 @@ with py.pkgs; buildPythonApplication rec {
   };
 
   meta = with lib; {
+    description = "Unified tool to manage your AWS services";
     homepage = "https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html";
     changelog = "https://github.com/aws/aws-cli/blob/${version}/CHANGELOG.rst";
-    description = "Unified tool to manage your AWS services";
     license = licenses.asl20;
     maintainers = with maintainers; [ bhipple davegallant bryanasdev000 devusb anthonyroussel ];
     mainProgram = "aws";
diff --git a/nixpkgs/pkgs/tools/admin/azure-cli/python-packages.nix b/nixpkgs/pkgs/tools/admin/azure-cli/python-packages.nix
index 625d68dabc0a..392063126229 100644
--- a/nixpkgs/pkgs/tools/admin/azure-cli/python-packages.nix
+++ b/nixpkgs/pkgs/tools/admin/azure-cli/python-packages.nix
@@ -5,7 +5,7 @@ let
 
   overrideAzureMgmtPackage = package: version: extension: hash:
     # check to make sure overriding is even necessary
-    package.overrideAttrs(oldAttrs: rec {
+    package.overridePythonAttrs (oldAttrs: rec {
       inherit version;
 
       src = fetchPypi {
@@ -121,6 +121,11 @@ let
       azure-mgmt-apimanagement = overrideAzureMgmtPackage super.azure-mgmt-apimanagement "4.0.0" "zip"
         "sha256-AiTjLJ28g80xnrRFLfPUevJgeaxLpuGmvkd3+FskNiw=";
 
+      azure-mgmt-appcontainers = (overrideAzureMgmtPackage super.azure-mgmt-appcontainers "2.0.0" "zip"
+        "sha256-ccdIdvdgTYPWEZCWqkLc8lEuMuAEERvl5B1huJyBkvU=").overridePythonAttrs (attrs: {
+        propagatedBuildInputs = attrs.propagatedBuildInputs or [ ] ++ [ self.msrest ];
+      });
+
       azure-mgmt-batch = overrideAzureMgmtPackage super.azure-mgmt-batch "17.0.0" "zip"
         "sha256-hkM4WVLuwxj4qgXsY8Ya7zu7/v37gKdP0Xbf2EqrsWo=";
 
@@ -164,7 +169,7 @@ let
         "sha256-eNQ3rbKFdPRIyDjtXwH5ztN4GWCYBh3rWdn3AxcEwX4=";
 
       azure-mgmt-containerservice = overrideAzureMgmtPackage super.azure-mgmt-containerservice "25.0.0" "zip"
-      "sha256-je7O92bklsbIlfsTUF2TXUqztAZxn8ep4ezCUHeLuhE=";
+        "sha256-je7O92bklsbIlfsTUF2TXUqztAZxn8ep4ezCUHeLuhE=";
 
       azure-mgmt-cosmosdb = overrideAzureMgmtPackage super.azure-mgmt-cosmosdb "9.2.0" "zip"
         "sha256-PAaBkR77Ho2YI5I+lmazR/8vxEZWpbvM427yRu1ET0k=";
@@ -205,8 +210,10 @@ let
       azure-mgmt-loganalytics = overrideAzureMgmtPackage super.azure-mgmt-loganalytics "13.0.0b4" "zip"
         "sha256-Jm1t7v5vyFjNNM/evVaEI9sXJKNwJk6XAXuJSRSnKHk=";
 
-      azure-mgmt-network = overrideAzureMgmtPackage super.azure-mgmt-network "21.0.1" "zip"
-        "sha256-7PduPg0JK4f/3q/b5pq58TjqVk+Iu+vxa+aJKDnScy8=";
+      azure-mgmt-network = (overrideAzureMgmtPackage super.azure-mgmt-network "21.0.1" "zip"
+        "sha256-7PduPg0JK4f/3q/b5pq58TjqVk+Iu+vxa+aJKDnScy8=").overridePythonAttrs (attrs: {
+        propagatedBuildInputs = attrs.propagatedBuildInputs or [ ] ++ [ self.msrest ];
+      });
 
       azure-mgmt-maps = overrideAzureMgmtPackage super.azure-mgmt-maps "2.0.0" "zip"
         "sha256-OE4X92potwCk+YhHiUXDqXIXEcBAByWv38tjz4ToXw4=";
@@ -223,7 +230,7 @@ let
       azure-mgmt-media = overrideAzureMgmtPackage super.azure-mgmt-media "9.0.0" "zip"
         "sha256-TI7l8sSQ2QUgPqiE3Cu/F67Wna+KHbQS3fuIjOb95ZM=";
 
-      azure-mgmt-msi = super.azure-mgmt-msi.overridePythonAttrs(old: rec {
+      azure-mgmt-msi = super.azure-mgmt-msi.overridePythonAttrs (old: rec {
         version = "7.0.0";
         src = old.src.override {
           inherit version;
@@ -282,8 +289,10 @@ let
       azure-mgmt-containerregistry = overrideAzureMgmtPackage super.azure-mgmt-containerregistry "10.1.0" "zip"
         "sha256-VrX9YfYNvlA8+eNqHCp35BAeQZzQKakZs7ZZKwT8oYc=";
 
-      azure-mgmt-monitor = overrideAzureMgmtPackage super.azure-mgmt-monitor "5.0.0" "zip"
-        "sha256-eL9KJowxTF7hZJQQQCNJZ7l+rKPFM8wP5vEigt3ZFGE=";
+      azure-mgmt-monitor = (overrideAzureMgmtPackage super.azure-mgmt-monitor "5.0.0" "zip"
+        "sha256-eL9KJowxTF7hZJQQQCNJZ7l+rKPFM8wP5vEigt3ZFGE=").overridePythonAttrs (attrs: {
+        propagatedBuildInputs = attrs.propagatedBuildInputs or [ ] ++ [ self.msrest ];
+      });
 
       azure-mgmt-advisor = overrideAzureMgmtPackage super.azure-mgmt-advisor "9.0.0" "zip"
         "sha256-/ECLNzFf6EeBtRkST4yxuKwQsvQkHkOdDT4l/WyhjXs=";
@@ -312,7 +321,7 @@ let
       azure-multiapi-storage = overrideAzureMgmtPackage super.azure-multiapi-storage "1.2.0" "tar.gz"
         "sha256-CQuoWHeh0EMitTRsvifotrTwpWd/Q9LWWD7jZ2w9r8I=";
 
-      azure-appconfiguration = super.azure-appconfiguration.overrideAttrs(oldAttrs: rec {
+      azure-appconfiguration = super.azure-appconfiguration.overrideAttrs (oldAttrs: rec {
         version = "1.1.1";
 
         src = fetchPypi {
@@ -323,7 +332,7 @@ let
         };
       });
 
-      azure-graphrbac = super.azure-graphrbac.overrideAttrs(oldAttrs: rec {
+      azure-graphrbac = super.azure-graphrbac.overrideAttrs (oldAttrs: rec {
         version = "0.60.0";
 
         src = fetchPypi {
@@ -334,7 +343,7 @@ let
         };
       });
 
-      azure-storage-blob = super.azure-storage-blob.overrideAttrs(oldAttrs: rec {
+      azure-storage-blob = super.azure-storage-blob.overrideAttrs (oldAttrs: rec {
         version = "1.5.0";
         src = fetchPypi {
           inherit (oldAttrs) pname;
@@ -343,7 +352,7 @@ let
         };
       });
 
-      azure-storage-common = super.azure-storage-common.overrideAttrs(oldAttrs: rec {
+      azure-storage-common = super.azure-storage-common.overrideAttrs (oldAttrs: rec {
         version = "1.4.2";
         src = fetchPypi {
           inherit (oldAttrs) pname;
@@ -352,7 +361,7 @@ let
         };
       });
 
-      azure-synapse-artifacts = super.azure-synapse-artifacts.overrideAttrs(oldAttrs: rec {
+      azure-synapse-artifacts = super.azure-synapse-artifacts.overrideAttrs (oldAttrs: rec {
         version = "0.15.0";
         src = fetchPypi {
           inherit (oldAttrs) pname;
@@ -365,7 +374,7 @@ let
         ];
       });
 
-      azure-synapse-accesscontrol = super.azure-synapse-accesscontrol.overrideAttrs(oldAttrs: rec {
+      azure-synapse-accesscontrol = super.azure-synapse-accesscontrol.overrideAttrs (oldAttrs: rec {
         version = "0.5.0";
         src = fetchPypi {
           inherit (oldAttrs) pname;
@@ -375,7 +384,7 @@ let
         };
       });
 
-      azure-synapse-managedprivateendpoints = super.azure-synapse-managedprivateendpoints.overrideAttrs(oldAttrs: rec {
+      azure-synapse-managedprivateendpoints = super.azure-synapse-managedprivateendpoints.overrideAttrs (oldAttrs: rec {
         version = "0.4.0";
         src = fetchPypi {
           inherit (oldAttrs) pname;
@@ -385,7 +394,7 @@ let
         };
       });
 
-      azure-synapse-spark = super.azure-synapse-spark.overrideAttrs(oldAttrs: rec {
+      azure-synapse-spark = super.azure-synapse-spark.overrideAttrs (oldAttrs: rec {
         version = "0.2.0";
         src = fetchPypi {
           inherit (oldAttrs) pname;
@@ -395,7 +404,7 @@ let
         };
       });
 
-      azure-keyvault = super.azure-keyvault.overrideAttrs(oldAttrs: rec {
+      azure-keyvault = super.azure-keyvault.overrideAttrs (oldAttrs: rec {
         version = "1.1.0";
         src = fetchPypi {
           inherit (oldAttrs) pname;
@@ -415,7 +424,7 @@ let
         pythonImportsCheck = [ ];
       });
 
-      azure-keyvault-administration = super.azure-keyvault-administration.overridePythonAttrs(oldAttrs: rec {
+      azure-keyvault-administration = super.azure-keyvault-administration.overridePythonAttrs (oldAttrs: rec {
         version = "4.3.0";
         src = fetchPypi {
           inherit (oldAttrs) pname;
@@ -425,7 +434,7 @@ let
         };
       });
 
-      azure-keyvault-keys = super.azure-keyvault-keys.overridePythonAttrs(oldAttrs: rec {
+      azure-keyvault-keys = super.azure-keyvault-keys.overridePythonAttrs (oldAttrs: rec {
         version = "4.8.0b2";
         src = fetchPypi {
           inherit (oldAttrs) pname;
@@ -437,7 +446,7 @@ let
 
 
       # part of azure.mgmt.datalake namespace
-      azure-mgmt-datalake-analytics = super.azure-mgmt-datalake-analytics.overrideAttrs(oldAttrs: rec {
+      azure-mgmt-datalake-analytics = super.azure-mgmt-datalake-analytics.overrideAttrs (oldAttrs: rec {
         version = "0.2.1";
 
         src = fetchPypi {
@@ -454,7 +463,7 @@ let
         '';
       });
 
-      azure-mgmt-datalake-store = super.azure-mgmt-datalake-store.overrideAttrs(oldAttrs: rec {
+      azure-mgmt-datalake-store = super.azure-mgmt-datalake-store.overrideAttrs (oldAttrs: rec {
         version = "0.5.0";
 
         src = fetchPypi {
@@ -471,7 +480,7 @@ let
         '';
       });
 
-      adal = super.adal.overridePythonAttrs(oldAttrs: rec {
+      adal = super.adal.overridePythonAttrs (oldAttrs: rec {
         version = "1.2.7";
 
         src = fetchPypi {
@@ -484,7 +493,7 @@ let
         doCheck = false;
       });
 
-      msal = super.msal.overridePythonAttrs(oldAttrs: rec {
+      msal = super.msal.overridePythonAttrs (oldAttrs: rec {
         version = "1.24.0b1";
 
         src = fetchPypi {
@@ -494,7 +503,7 @@ let
         };
       });
 
-      semver = super.semver.overridePythonAttrs(oldAttrs: rec {
+      semver = super.semver.overridePythonAttrs (oldAttrs: rec {
         version = "2.13.0";
 
         src = fetchPypi {
@@ -504,7 +513,7 @@ let
         };
       });
 
-      jsondiff = super.jsondiff.overridePythonAttrs(oldAttrs: rec {
+      jsondiff = super.jsondiff.overridePythonAttrs (oldAttrs: rec {
         version = "2.0.0";
 
         src = oldAttrs.src.override {
@@ -513,7 +522,7 @@ let
         };
       });
 
-      knack = super.knack.overridePythonAttrs(oldAttrs: rec {
+      knack = super.knack.overridePythonAttrs (oldAttrs: rec {
         version = "0.11.0";
 
         src = fetchPypi {
@@ -523,7 +532,7 @@ let
         };
       });
 
-      argcomplete = super.argcomplete.overridePythonAttrs(oldAttrs: rec {
+      argcomplete = super.argcomplete.overridePythonAttrs (oldAttrs: rec {
         version = "3.1.1";
 
         src = fetchPypi {
@@ -533,7 +542,7 @@ let
         };
       });
 
-      sshtunnel = super.sshtunnel.overridePythonAttrs(oldAttrs: rec {
+      sshtunnel = super.sshtunnel.overridePythonAttrs (oldAttrs: rec {
         name = "sshtunnel-${version}";
         version = "0.1.5";
 
@@ -544,7 +553,7 @@ let
         };
       });
 
-      websocket-client = super.websocket-client.overridePythonAttrs(oldAttrs: rec {
+      websocket-client = super.websocket-client.overridePythonAttrs (oldAttrs: rec {
         version = "1.3.1";
 
         src = oldAttrs.src.override {
@@ -553,7 +562,7 @@ let
         };
       });
 
-      azure-mgmt-resource = super.azure-mgmt-resource.overridePythonAttrs(oldAttrs: rec {
+      azure-mgmt-resource = super.azure-mgmt-resource.overridePythonAttrs (oldAttrs: rec {
         version = "23.1.0b2";
 
         src = oldAttrs.src.override {
@@ -564,4 +573,4 @@ let
     };
   };
 in
-  py
+py
diff --git a/nixpkgs/pkgs/tools/admin/balena-cli/default.nix b/nixpkgs/pkgs/tools/admin/balena-cli/default.nix
index 827d4e162b51..bb674a83f322 100644
--- a/nixpkgs/pkgs/tools/admin/balena-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/balena-cli/default.nix
@@ -1,47 +1,49 @@
 { lib
 , stdenv
-, fetchzip
+, buildNpmPackage
+, fetchFromGitHub
 , testers
+, balena-cli
+, nodePackages
+, python3
+, udev
+, darwin
 }:
-let
-  inherit (stdenv.hostPlatform) system;
-  throwSystem = throw "Unsupported system: ${system}";
 
-  plat = {
-    x86_64-linux = "linux-x64";
-    x86_64-darwin = "macOS-x64";
-    # Balena only packages for x86 so we rely on Rosetta for Apple Silicon
-    aarch64-darwin = "macOS-x64";
-  }.${system} or throwSystem;
-
-  sha256 = {
-    x86_64-linux = "sha256-USljQ/cnbSabzsZWXlZ0eeZSqkTr3wVP0ktXqZ7Fw4U=";
-    x86_64-darwin = "sha256-NWzJPB+HzlsB6yTcEMwTg8pioonGWPOU96jyIpiZiTY=";
-    aarch64-darwin = "sha256-NWzJPB+HzlsB6yTcEMwTg8pioonGWPOU96jyIpiZiTY=";
-  }.${system} or throwSystem;
-
-  version = "16.7.6";
-  src = fetchzip {
-    url = "https://github.com/balena-io/balena-cli/releases/download/v${version}/balena-cli-v${version}-${plat}-standalone.zip";
-    inherit sha256;
-  };
-in
-stdenv.mkDerivation (finalAttrs: {
+buildNpmPackage rec {
   pname = "balena-cli";
-  inherit version src;
+  version = "17.0.0";
 
-  installPhase = ''
-    runHook preInstall
+  src = fetchFromGitHub {
+    owner = "balena-io";
+    repo = "balena-cli";
+    rev = "v${version}";
+    hash = "sha256-sNpxjSumiP+4fX6b3j+HEl/lr4pvudrhfTzr2TYastE=";
+  };
 
-    mkdir -p $out/bin
-    cp -r ./* $out/
-    ln -s $out/balena $out/bin/balena
+  npmDepsHash = "sha256-q2Yc6e5dEiP2Q4tFIeqj4mswM1/pX1pdGeoagyiupvs=";
 
-    runHook postInstall
+  postPatch = ''
+    ln -s npm-shrinkwrap.json package-lock.json
   '';
+  makeCacheWritable = true;
+
+  nativeBuildInputs = [
+    nodePackages.node-gyp
+    python3
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.cctools
+  ];
+
+  buildInputs = lib.optionals stdenv.isLinux [
+    udev
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.Foundation
+    darwin.apple_sdk.frameworks.Cocoa
+  ];
 
   passthru.tests.version = testers.testVersion {
-    package = finalAttrs.finalPackage;
+    package = balena-cli;
     command = ''
       # Override default cache directory so Balena CLI's unavoidable update check does not fail due to write permissions
       BALENARC_DATA_DIRECTORY=./ balena --version
@@ -49,46 +51,6 @@ stdenv.mkDerivation (finalAttrs: {
     inherit version;
   };
 
-  # https://github.com/NixOS/nixpkgs/pull/48193/files#diff-b65952dbe5271c002fbc941b01c3586bf5050ad0e6aa6b2fcc74357680e103ea
-  preFixup =
-    if stdenv.isLinux then
-      let
-        libPath = lib.makeLibraryPath [ stdenv.cc.cc ];
-      in
-      ''
-        orig_size=$(stat --printf=%s $out/balena)
-        patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/balena
-        patchelf --set-rpath ${libPath} $out/balena
-        chmod +x $out/balena
-        new_size=$(stat --printf=%s $out/balena)
-        ###### zeit-pkg fixing starts here.
-        # we're replacing plaintext js code that looks like
-        # PAYLOAD_POSITION = '1234                  ' | 0
-        # [...]
-        # PRELUDE_POSITION = '1234                  ' | 0
-        # ^-----20-chars-----^^------22-chars------^
-        # ^-- grep points here
-        #
-        # var_* are as described above
-        # shift_by seems to be safe so long as all patchelf adjustments occur
-        # before any locations pointed to by hardcoded offsets
-        var_skip=20
-        var_select=22
-        shift_by=$(expr $new_size - $orig_size)
-        function fix_offset {
-          # $1 = name of variable to adjust
-          location=$(grep -obUam1 "$1" $out/bin/balena | cut -d: -f1)
-          location=$(expr $location + $var_skip)
-          value=$(dd if=$out/balena iflag=count_bytes,skip_bytes skip=$location \
-                     bs=1 count=$var_select status=none)
-          value=$(expr $shift_by + $value)
-          echo -n $value | dd of=$out/balena bs=1 seek=$location conv=notrunc
-        }
-        fix_offset PAYLOAD_POSITION
-        fix_offset PRELUDE_POSITION
-      '' else '''';
-  dontStrip = true;
-
   meta = with lib; {
     description = "A command line interface for balenaCloud or openBalena";
     longDescription = ''
@@ -100,9 +62,7 @@ stdenv.mkDerivation (finalAttrs: {
     homepage = "https://github.com/balena-io/balena-cli";
     changelog = "https://github.com/balena-io/balena-cli/blob/v${version}/CHANGELOG.md";
     license = licenses.asl20;
-    maintainers = [ maintainers.kalebpace ];
-    platforms = platforms.linux ++ platforms.darwin;
-    sourceProvenance = [ sourceTypes.binaryNativeCode ];
+    maintainers = [ maintainers.kalebpace maintainers.doronbehar ];
     mainProgram = "balena";
   };
-})
+}
diff --git a/nixpkgs/pkgs/tools/admin/coldsnap/default.nix b/nixpkgs/pkgs/tools/admin/coldsnap/default.nix
index 93f9baa3de85..417bbd14c139 100644
--- a/nixpkgs/pkgs/tools/admin/coldsnap/default.nix
+++ b/nixpkgs/pkgs/tools/admin/coldsnap/default.nix
@@ -9,15 +9,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "coldsnap";
-  version = "0.5.1";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-WqNGajtezhBDYmgUayKjdNAZSyKirIYeYOnozMCIya4=";
+    hash = "sha256-zXLt16ffqbExU23uRI7U99nUwpSKTIf039dDq+k2KAA=";
   };
-  cargoHash = "sha256-av9hsvY8xsB+HlIRLYNFDJc9eyBfOyBZ347vWoVsDmM=";
+  cargoHash = "sha256-RRyAzD9eiscZ9kB5tFh5vUnGk6XYYKy0/TAjcaygmG4=";
 
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/tools/admin/copilot-cli/default.nix b/nixpkgs/pkgs/tools/admin/copilot-cli/default.nix
index a9cd2230ed8d..b7176656363a 100644
--- a/nixpkgs/pkgs/tools/admin/copilot-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/copilot-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "copilot-cli";
-  version = "1.29.1";
+  version = "1.30.0";
 
   src = fetchFromGitHub {
     owner = "aws";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Mfh3Bym9aVvCaRHcSyg68KqA1Zx0tt7x52IOzvC+61M=";
+    hash = "sha256-Q495MJlvElm5yrX4QWrwvB62Tdzq0W5pTYsTXyw9Idw=";
   };
 
-  vendorHash = "sha256-0QPUvKGuR4fhXUoak6PqkBXsg+WkAOlSluci6/+ULB8=";
+  vendorHash = "sha256-/2uUiFL2wL+gAzqY2S3sqytPLKB5+QkYXCBNLqSJSWU=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/tools/admin/eksctl/default.nix b/nixpkgs/pkgs/tools/admin/eksctl/default.nix
index 9153e4c4ecfc..d3472f4dae51 100644
--- a/nixpkgs/pkgs/tools/admin/eksctl/default.nix
+++ b/nixpkgs/pkgs/tools/admin/eksctl/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "eksctl";
-  version = "0.151.0";
+  version = "0.154.0";
 
   src = fetchFromGitHub {
     owner = "weaveworks";
     repo = pname;
     rev = version;
-    hash = "sha256-XZo4g66r/pvIHT5XqvQYcwPzrYUGoQKNE2h5skhPzU4=";
+    hash = "sha256-GPJym+U6wBEJSvDYoXAwgCFqzTvXSVK2i/AN+X1S6Oo=";
   };
 
-  vendorHash = "sha256-p+zCwVKUP6igQLR5GycsmF2oNyDfP/EEgg89kBDS1VU=";
+  vendorHash = "sha256-/aL1mweWPJRjjqzGBcGc7UHcH0ymVANdu2LkpoCTkh0=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/admin/gimme-aws-creds/default.nix b/nixpkgs/pkgs/tools/admin/gimme-aws-creds/default.nix
index 8d35085eb454..e33587b94670 100644
--- a/nixpkgs/pkgs/tools/admin/gimme-aws-creds/default.nix
+++ b/nixpkgs/pkgs/tools/admin/gimme-aws-creds/default.nix
@@ -42,14 +42,14 @@ let
 in
 python.pkgs.buildPythonApplication rec {
   pname = "gimme-aws-creds";
-  version = "2.7.1"; # N.B: if you change this, check if overrides are still up-to-date
+  version = "2.7.2"; # N.B: if you change this, check if overrides are still up-to-date
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "Nike-Inc";
     repo = "gimme-aws-creds";
     rev = "v${version}";
-    hash = "sha256-vn3DzDqu19g6Z/RcWsktJxmeg6oK9NIEyjpH9g1tXNs=";
+    hash = "sha256-ydzGaUQ43vvQqU9xvhPJqHG/2PUtBbASIVpZCDnsR60=";
   };
 
   nativeBuildInputs = with python.pkgs; [
@@ -71,6 +71,11 @@ python.pkgs.buildPythonApplication rec {
     pyjwt
   ];
 
+  preCheck = ''
+    # Disable using platform's keyring unavailable in sandbox
+    export PYTHON_KEYRING_BACKEND="keyring.backends.fail.Keyring"
+  '';
+
   checkInputs = with python.pkgs; [
     pytestCheckHook
     responses
diff --git a/nixpkgs/pkgs/tools/admin/granted/default.nix b/nixpkgs/pkgs/tools/admin/granted/default.nix
index cfea2994df6b..907d440174ff 100644
--- a/nixpkgs/pkgs/tools/admin/granted/default.nix
+++ b/nixpkgs/pkgs/tools/admin/granted/default.nix
@@ -1,7 +1,10 @@
 { bash
 , buildGoModule
 , fetchFromGitHub
+
+, withFish ? false
 , fish
+
 , lib
 , makeWrapper
 , xdg-utils
@@ -36,6 +39,8 @@ buildGoModule rec {
   ];
 
   postInstall = ''
+    ln -s $out/bin/granted $out/bin/assumego
+
     # Install shell script
     install -Dm755 $src/scripts/assume $out/bin/assume
     substituteInPlace $out/bin/assume \
@@ -44,6 +49,7 @@ buildGoModule rec {
     wrapProgram $out/bin/assume \
       --suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
 
+  '' + lib.optionalString withFish ''
     # Install fish script
     install -Dm755 $src/scripts/assume.fish $out/share/assume.fish
     substituteInPlace $out/share/assume.fish \
@@ -56,5 +62,10 @@ buildGoModule rec {
     changelog = "https://github.com/common-fate/granted/releases/tag/${version}";
     license = licenses.mit;
     maintainers = [ maintainers.ivankovnatsky ];
+    # Could not figure out how to use this application without any hustle. Weird
+    # linking of binary, aliases for god knows what.
+    # https://docs.commonfate.io/granted/usage/assuming-roles.
+    # Will mark as broken until maybe someone fixes it. Switched to aws-sso.
+    broken = true;
   };
 }
diff --git a/nixpkgs/pkgs/tools/admin/hop-cli/default.nix b/nixpkgs/pkgs/tools/admin/hop-cli/default.nix
index eea6a9e73661..794b5be90ef4 100644
--- a/nixpkgs/pkgs/tools/admin/hop-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/hop-cli/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hop-cli";
-  version = "0.2.52";
+  version = "0.2.53";
 
   src = fetchFromGitHub {
     owner = "hopinc";
     repo = "cli";
     rev = "v${version}";
-    hash = "sha256-xuOkW5jetl+8obeFJnbkVZa+wYWfTNiTOmcrzC8+wGE=";
+    hash = "sha256-DyM8OEgO2OtD/PD/I6Ys2Yg0gQMB21OnjFdDkWKw+Io=";
   };
 
-  cargoHash = "sha256-ePUlw4UzsQ2lNuJ5g5OAYh6nKTIoHdDMb34Jzuqtas8=";
+  cargoHash = "sha256-R6Dbje6OEndJxyWJ8cR/QcfdIBw88Vfbve+EYGozWNc=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/nixpkgs/pkgs/tools/admin/lxd/default.nix b/nixpkgs/pkgs/tools/admin/lxd/default.nix
index 427d60f3edf6..5e123ff6685b 100644
--- a/nixpkgs/pkgs/tools/admin/lxd/default.nix
+++ b/nixpkgs/pkgs/tools/admin/lxd/default.nix
@@ -18,11 +18,11 @@
 
 buildGoModule rec {
   pname = "lxd-unwrapped";
-  version = "5.16";
+  version = "5.17";
 
   src = fetchurl {
     url = "https://github.com/canonical/lxd/releases/download/lxd-${version}/lxd-${version}.tar.gz";
-    hash = "sha256-evtNPZvnx8rzr/tJkEp0E7BhUBWHBSJdMtZJQk3VZI8=";
+    hash = "sha256-21pw8Q8UYjuxdaKzNXoTanxxyTNRXXbuerIZPIQK4yg=";
   };
 
   vendorHash = null;
diff --git a/nixpkgs/pkgs/tools/admin/qovery-cli/default.nix b/nixpkgs/pkgs/tools/admin/qovery-cli/default.nix
index 971e47d3ad61..9c88c2d39b89 100644
--- a/nixpkgs/pkgs/tools/admin/qovery-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/qovery-cli/default.nix
@@ -8,13 +8,13 @@
 
 buildGoModule rec {
   pname = "qovery-cli";
-  version = "0.65.1";
+  version = "0.67.1";
 
   src = fetchFromGitHub {
     owner = "Qovery";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-0Wg6E89+k7YKx+DpIcO76NJ+VzGPQc07PoR0FvmYeKg=";
+    hash = "sha256-mVn+Q4XZ+jJjHR+V5Rl/rPUZN/Tv7vVX7u6IDuJNdO0=";
   };
 
   vendorHash = "sha256-Fcm/f54zGgA742yhIVJxjv7Y2T8DblC71+hw5HTmOf0=";
diff --git a/nixpkgs/pkgs/tools/admin/simplotask/default.nix b/nixpkgs/pkgs/tools/admin/simplotask/default.nix
index ac5ccbaa89e2..127fd46f7814 100644
--- a/nixpkgs/pkgs/tools/admin/simplotask/default.nix
+++ b/nixpkgs/pkgs/tools/admin/simplotask/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "simplotask";
-  version = "1.11.3";
+  version = "1.11.4";
 
   src = fetchFromGitHub {
     owner = "umputun";
     repo = "spot";
     rev = "v${version}";
-    hash = "sha256-sNYC8QQmVdBjHU3/pDD4TGLDxKsMLyMmZa7wBVlWnGM=";
+    hash = "sha256-G/T7LF8ujlCSbK1Lv2h43OZVx52yrLDr+6e/WxhaHOo=";
   };
 
   vendorHash = null;
diff --git a/nixpkgs/pkgs/tools/admin/stripe-cli/default.nix b/nixpkgs/pkgs/tools/admin/stripe-cli/default.nix
index 5d31ab07fdad..727f6f605cbe 100644
--- a/nixpkgs/pkgs/tools/admin/stripe-cli/default.nix
+++ b/nixpkgs/pkgs/tools/admin/stripe-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "stripe-cli";
-  version = "1.17.0";
+  version = "1.17.1";
 
   src = fetchFromGitHub {
     owner = "stripe";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-F+mnFarlrlQ+bq7q6CoyDPPQ7uv5y9pBRT072JRlS/4=";
+    hash = "sha256-5j2DHbBLHQWtkQP8qTTxD949alo5mh88Vgv5cus8C/w=";
   };
   vendorHash = "sha256-DYA6cu2KzEBZ4wsT7wjcdY1endQQOZlj2aOwu6iGLew=";
 
@@ -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.17.0), remove for now.
+    # TODO: no clue why it's broken (1.17.1), 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/nixpkgs/pkgs/tools/admin/syft/default.nix b/nixpkgs/pkgs/tools/admin/syft/default.nix
index c8f91dc0fe65..0f823492d32c 100644
--- a/nixpkgs/pkgs/tools/admin/syft/default.nix
+++ b/nixpkgs/pkgs/tools/admin/syft/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "syft";
-  version = "0.87.0";
+  version = "0.88.0";
 
   src = fetchFromGitHub {
     owner = "anchore";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-qDeUo/xAGCy/Ih5B8AyiJ7q9aCd5iWNkW7T+0OqAfTY=";
+    hash = "sha256-A9EYbZigG6TmyYhMjqhpZRaYnR7KzCJpaOBEEaSXWQ4=";
     # 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-7lrim4N3hT2qkpTIVF1A/GUu5BfJ3Z8A6H1nd8yHwaw=";
+  vendorHash = "sha256-7KL/Z95Gg2Cy6oUIVS8KLS3DvQYcLCZaxgKbtzR1M1U=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/tools/archivers/unar/default.nix b/nixpkgs/pkgs/tools/archivers/unar/default.nix
index 2fdaf2def590..ee1693ee18e2 100644
--- a/nixpkgs/pkgs/tools/archivers/unar/default.nix
+++ b/nixpkgs/pkgs/tools/archivers/unar/default.nix
@@ -67,7 +67,7 @@ stdenv.mkDerivation rec {
 
   dontConfigure = true;
 
-  sourceRoot = "./${src.name}/XADMaster";
+  sourceRoot = "${src.name}/XADMaster";
 
   installPhase = ''
     runHook preInstall
diff --git a/nixpkgs/pkgs/tools/audio/bark/default.nix b/nixpkgs/pkgs/tools/audio/bark/default.nix
new file mode 100644
index 000000000000..f943b555b010
--- /dev/null
+++ b/nixpkgs/pkgs/tools/audio/bark/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, pkg-config
+, alsa-lib
+, speexdsp
+}:
+rustPlatform.buildRustPackage {
+  pname = "bark";
+  version = "unstable-2023-08-22";
+  src = fetchFromGitHub {
+    owner = "haileys";
+    repo = "bark";
+    rev = "2586b9fb58b496f8ef06f516c9cd3aace77521f7";
+    hash = "sha256-sGroae6uJhB9UIpFmvt520Zs9k0ir7H8pGkhKJmVWek=";
+  };
+  cargoHash = "sha256-OjlVn4fvKPm3UfqhKkv7cDuvK4mcLcQXPNPK+WScrMc=";
+  buildInputs = [ alsa-lib speexdsp ];
+  nativeBuildInputs = [ pkg-config ];
+
+  meta = {
+    description = "Live sync audio streaming for local networks";
+    homepage = "https://github.com/haileys/bark";
+    license = lib.licenses.agpl3Only;
+    maintainers = with lib.maintainers; [ samw ];
+    platforms = lib.platforms.linux;
+  };
+}
+
diff --git a/nixpkgs/pkgs/tools/audio/headsetcontrol/default.nix b/nixpkgs/pkgs/tools/audio/headsetcontrol/default.nix
index 294b2cc7b931..99434f9ca738 100644
--- a/nixpkgs/pkgs/tools/audio/headsetcontrol/default.nix
+++ b/nixpkgs/pkgs/tools/audio/headsetcontrol/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "headsetcontrol";
-  version = "2.6.1";
+  version = "2.7.0";
 
   src = fetchFromGitHub {
     owner = "Sapd";
     repo = "HeadsetControl";
     rev = version;
-    sha256 = "sha256-SVOcRzR52RYZsk/OWAr1/s+Nm6x48OxG0TF7yQ+Kb94=";
+    sha256 = "sha256-tAndkfLEgj81JWzXtDBNspRxzKAL6XaRw0aDI1XbC1E=";
   };
 
   nativeBuildInputs = [
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   ];
 
   /*
-  Test depends on having the apropiate headsets connected.
+  Tests depend on having the appropriate headsets connected.
   */
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/audio/mpd-mpris/default.nix b/nixpkgs/pkgs/tools/audio/mpd-mpris/default.nix
index 39dbcb952329..f530ffc5d664 100644
--- a/nixpkgs/pkgs/tools/audio/mpd-mpris/default.nix
+++ b/nixpkgs/pkgs/tools/audio/mpd-mpris/default.nix
@@ -1,27 +1,37 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, fetchpatch
+}:
 
 buildGoModule rec {
   pname = "mpd-mpris";
-  version = "0.4.0-2";
+  version = "0.4.1";
 
   src = fetchFromGitHub {
     owner = "natsukagami";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-RGuscED0RvA1+5Aj+Kcnk1h/whU4npJ6hPq8GHWwxPU=";
+    sha256 = "sha256-QxPkGWpCWiyEbChH9SHeD+SiV8k0c/G7MG/azksP3xU=";
   };
 
-  vendorHash = "sha256-GmdD/4VYp3KeblNGgltFWHdOnK5qsBa2ygIYOBrH+b0=";
+  patches = [
+    # Makes Exec= path not absolute, see https://github.com/natsukagami/mpd-mpris/pull/42
+    (fetchpatch {
+      url = "https://github.com/natsukagami/mpd-mpris/commit/8a5b53b1aa3174c3ccb1db24fb4e39f90012b98f.patch";
+      hash = "sha256-LArPq+RRPJOs0je1olqg+pK7nvU7UIlrpGtHv2PhIY4=";
+    })
+  ];
+
+  vendorHash = "sha256-HCDJrp9WFB1z+FnYpOI5e/AojtdnpN2ZNtgGVaH/v/Q=";
 
   doCheck = false;
 
   subPackages = [ "cmd/${pname}" ];
 
   postInstall = ''
-    substituteInPlace mpd-mpris.service \
-      --replace /usr/bin $out/bin
-    mkdir -p $out/lib/systemd/user
-    cp mpd-mpris.service $out/lib/systemd/user
+    install -Dm644 mpd-mpris.service $out/lib/systemd/user/mpd-mpris.service
+    install -Dm644 mpd-mpris.desktop $out/etc/xdg/autostart/mpd-mpris.desktop
   '';
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/audio/stt/default.nix b/nixpkgs/pkgs/tools/audio/stt/default.nix
index 8697cb62f5b7..9f3fcf05b5fa 100644
--- a/nixpkgs/pkgs/tools/audio/stt/default.nix
+++ b/nixpkgs/pkgs/tools/audio/stt/default.nix
@@ -8,7 +8,8 @@ stdenv.mkDerivation rec {
     url = "https://github.com/coqui-ai/STT/releases/download/v${version}/native_client.tflite.Linux.tar.xz";
     hash = "sha256-RVYc64pLYumQoVUEFZdxfUUaBMozaqgD0h/yiMaWN90=";
   };
-  setSourceRoot = "sourceRoot=`pwd`";
+
+  sourceRoot = ".";
 
   nativeBuildInputs = [
     autoPatchelfHook
diff --git a/nixpkgs/pkgs/tools/audio/vgmtools/default.nix b/nixpkgs/pkgs/tools/audio/vgmtools/default.nix
index dc3e4e2df65d..ae6184a850f2 100644
--- a/nixpkgs/pkgs/tools/audio/vgmtools/default.nix
+++ b/nixpkgs/pkgs/tools/audio/vgmtools/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "vgmtools";
-  version = "unstable-2023-07-14";
+  version = "unstable-2023-08-27";
 
   src = fetchFromGitHub {
     owner = "vgmrips";
     repo = "vgmtools";
-    rev = "1b880040e0f730f180ecd019cb06c3db717420d2";
-    hash = "sha256-6JNBQGVAs49l80ITKDabPFeN3XQtIH/RGhR7vIlMNxs=";
+    rev = "7b7f2041e346f0d4fff8c834a763edc4f4d88896";
+    hash = "sha256-L52h94uohLMnj29lZj+i9hM8n9hIYo20nRS8RCW8npY=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/backup/awsbck/default.nix b/nixpkgs/pkgs/tools/backup/awsbck/default.nix
index 9e1286312120..f0ef8367e0ee 100644
--- a/nixpkgs/pkgs/tools/backup/awsbck/default.nix
+++ b/nixpkgs/pkgs/tools/backup/awsbck/default.nix
@@ -8,20 +8,20 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "awsbck";
-  version = "0.3.3";
+  version = "0.3.4";
 
   src = fetchFromGitHub {
     owner = "beeb";
     repo = "awsbck";
     rev = "v${version}";
-    hash = "sha256-L5hQ6vwuC9HuAGD9mvS8BGkPV3Ry5jJgRUF4Qf7fqaM=";
+    hash = "sha256-MDlFCbBAvGovhCO5uxXRQhIN4Fw9wav0afIBNzz3Mow=";
   };
 
   nativeBuildInputs = [ installShellFiles ];
 
   buildInputs = lib.optionals stdenv.isDarwin [ Security ];
 
-  cargoSha256 = "sha256-VKm27IzCUv3e1Mapb46SBJqvEwifgGxaRX2uM9MTNnQ=";
+  cargoSha256 = "sha256-p7t/QtihdP6dyJ7tKpNkqcyYJvFJG8+fPqSGH7DNAtg=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/backup/gphotos-sync/default.nix b/nixpkgs/pkgs/tools/backup/gphotos-sync/default.nix
index 707828fae713..27caf6df4db0 100644
--- a/nixpkgs/pkgs/tools/backup/gphotos-sync/default.nix
+++ b/nixpkgs/pkgs/tools/backup/gphotos-sync/default.nix
@@ -21,7 +21,19 @@ python3.pkgs.buildPythonApplication rec {
     ./skip-network-tests.patch
   ];
 
-  nativeBuildInputs = [ python3.pkgs.pythonRelaxDepsHook ];
+  # Consider fixing this upstream by following up on:
+  # https://github.com/gilesknap/gphotos-sync/issues/441
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace "setuptools<57" "setuptools" \
+      --replace "wheel==0.33.1" "wheel"
+  '';
+
+  nativeBuildInputs = with python3.pkgs; [
+    pythonRelaxDepsHook
+    setuptools
+    wheel
+  ];
 
   pythonRelaxDeps = [
     "psutil"
diff --git a/nixpkgs/pkgs/tools/backup/pgbackrest/default.nix b/nixpkgs/pkgs/tools/backup/pgbackrest/default.nix
index 3cf9ebecfff0..5adf07df325d 100644
--- a/nixpkgs/pkgs/tools/backup/pgbackrest/default.nix
+++ b/nixpkgs/pkgs/tools/backup/pgbackrest/default.nix
@@ -13,13 +13,13 @@
 }:
 stdenv.mkDerivation rec {
   pname = "pgbackrest";
-  version = "2.46";
+  version = "2.47";
 
   src = fetchFromGitHub {
     owner = "pgbackrest";
     repo = "pgbackrest";
     rev = "release/${version}";
-    sha256 = "sha256-Jd49ZpG/QhX+ayk9Ld0FB8abemfxQV6KZZuSXmybZw4=";
+    sha256 = "sha256-HKmJA/WlMR6Epu5WuD8pABDh5gaN+T98lc4ejgoD8LM=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/nixpkgs/pkgs/tools/backup/rdiff-backup/default.nix b/nixpkgs/pkgs/tools/backup/rdiff-backup/default.nix
index 5892ddbe0106..654306f873b9 100644
--- a/nixpkgs/pkgs/tools/backup/rdiff-backup/default.nix
+++ b/nixpkgs/pkgs/tools/backup/rdiff-backup/default.nix
@@ -6,22 +6,18 @@ let
 in
 pypkgs.buildPythonApplication rec {
   pname = "rdiff-backup";
-  version = "2.0.5";
+  version = "2.2.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-VNFgOOYgFO2RbHHIMDsH0vphpqaAOMoYn8LTFTSw84s=";
+    sha256 = "sha256-huKCa3hOw+pO8YfZNu5fFSd0IsQHfvoBVu9n4xOeoI4=";
   };
 
-  # pkg_resources fails to find the version and then falls back to "DEV"
-  postPatch = ''
-    substituteInPlace src/rdiff_backup/Globals.py \
-      --replace 'version = "DEV"' 'version = "${version}"'
-  '';
+  nativeBuildInputs = with pypkgs; [ setuptools-scm ];
 
   buildInputs = [ librsync ];
 
-  nativeBuildInputs = with pypkgs; [ setuptools-scm ];
+  propagatedBuildInputs = with pypkgs; [ pyyaml ];
 
   # no tests from pypi
   doCheck = false;
diff --git a/nixpkgs/pkgs/tools/compression/asar/default.nix b/nixpkgs/pkgs/tools/compression/asar/default.nix
new file mode 100644
index 000000000000..3d6c017674a8
--- /dev/null
+++ b/nixpkgs/pkgs/tools/compression/asar/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, mkYarnPackage
+, fetchFromGitHub
+, fetchYarnDeps
+}:
+
+mkYarnPackage rec {
+  pname = "asar";
+  version = "3.2.4";
+
+  src = fetchFromGitHub {
+    owner = "electron";
+    repo = "asar";
+    rev = "v${version}";
+    hash = "sha256-12FP8VRDo1PQ+tiN4zhzkcfAx9zFs/0MU03t/vFo074=";
+  };
+
+  packageJSON = ./package.json;
+
+  offlineCache = fetchYarnDeps {
+    yarnLock = "${src}/yarn.lock";
+    hash = "sha256-/fV3hd98pl46+fgmiMH9sDQrrZgdLY1oF9c3TaIxRSg=";
+  };
+
+  doDist = false;
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p "$out/lib/node_modules"
+    mv deps/@electron "$out/lib/node_modules"
+    rm "$out/lib/node_modules/@electron/asar/node_modules"
+    mv node_modules "$out/lib/node_modules/@electron/asar"
+
+    mkdir "$out/bin"
+    ln -s "$out/lib/node_modules/@electron/asar/bin/asar.js" "$out/bin/asar"
+
+    runHook postInstall
+  '';
+
+  meta = {
+    description = "Simple extensive tar-like archive format with indexing";
+    homepage = "https://github.com/electron/asar";
+    license = lib.licenses.mit;
+    mainProgram = "asar";
+    maintainers = with lib.maintainers; [ xvapx ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/compression/asar/package.json b/nixpkgs/pkgs/tools/compression/asar/package.json
new file mode 100644
index 000000000000..51ed0e24ffeb
--- /dev/null
+++ b/nixpkgs/pkgs/tools/compression/asar/package.json
@@ -0,0 +1,62 @@
+{
+  "name": "@electron/asar",
+  "description": "Creating Electron app packages",
+  "version": "0.0.0-development",
+  "main": "./lib/asar.js",
+  "types": "./lib/index.d.ts",
+  "bin": {
+    "asar": "./bin/asar.js"
+  },
+  "files": [
+    "bin",
+    "lib",
+    "lib/index.d.ts"
+  ],
+  "engines": {
+    "node": ">=10.12.0"
+  },
+  "license": "MIT",
+  "homepage": "https://github.com/electron/asar",
+  "repository": {
+    "type": "git",
+    "url": "https://github.com/electron/asar.git"
+  },
+  "bugs": {
+    "url": "https://github.com/electron/asar/issues"
+  },
+  "scripts": {
+    "mocha": "xvfb-maybe electron-mocha --reporter spec && mocha --reporter spec",
+    "test": "npm run lint && npm run mocha",
+    "lint": "tsd && standard",
+    "standard": "standard",
+    "tsd": "tsd"
+  },
+  "standard": {
+    "env": {
+      "mocha": true
+    },
+    "globals": [
+      "BigInt"
+    ]
+  },
+  "tsd": {
+    "directory": "test"
+  },
+  "dependencies": {
+    "chromium-pickle-js": "^0.2.0",
+    "commander": "^5.0.0",
+    "glob": "^7.1.6",
+    "minimatch": "^3.0.4"
+  },
+  "devDependencies": {
+    "@continuous-auth/semantic-release-npm": "^3.0.0",
+    "electron": "^22.0.0",
+    "electron-mocha": "^11.0.2",
+    "lodash": "^4.17.15",
+    "mocha": "^10.1.0",
+    "rimraf": "^3.0.2",
+    "standard": "^14.3.3",
+    "tsd": "^0.25.0",
+    "xvfb-maybe": "^0.2.1"
+  }
+}
diff --git a/nixpkgs/pkgs/tools/filesystems/catcli/default.nix b/nixpkgs/pkgs/tools/filesystems/catcli/default.nix
index eedbdcc22285..a2f5402dca25 100644
--- a/nixpkgs/pkgs/tools/filesystems/catcli/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/catcli/default.nix
@@ -1,28 +1,38 @@
 { lib
 , fetchFromGitHub
-, buildPythonApplication
-, docopt, anytree
+, python3
 }:
 
-buildPythonApplication rec {
-
+python3.pkgs.buildPythonApplication rec {
   pname = "catcli";
-  version = "0.8.7";
+  version = "0.9.6";
+  format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "deadc0de6";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-hVunxgc/aUapQYe6k3hKdkC+2Jw0x1HjI/kl/fJdWUo=";
+    hash = "sha256-+/kd7oPT6msojPj25bzG9HwVqPj47gIUg9LngbDc3y8=";
   };
 
-  propagatedBuildInputs = [ docopt anytree ];
-
   postPatch = "patchShebangs . ";
 
+  propagatedBuildInputs = with python3.pkgs; [
+    anytree
+    docopt
+    fusepy
+    pyfzf
+    types-docopt
+  ];
+
+  nativeCheckInputs = with python3.pkgs; [
+    pytestCheckHook
+  ];
+
   meta = with lib; {
     description = "The command line catalog tool for your offline data";
     homepage = "https://github.com/deadc0de6/catcli";
+    changelog = "https://github.com/deadc0de6/catcli/releases/tag/v${version}";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ petersjt014 ];
     platforms = platforms.all;
diff --git a/nixpkgs/pkgs/tools/filesystems/ceph/default.nix b/nixpkgs/pkgs/tools/filesystems/ceph/default.nix
index 1b0c9c98633a..5f3c8b22b888 100644
--- a/nixpkgs/pkgs/tools/filesystems/ceph/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/ceph/default.nix
@@ -85,7 +85,7 @@
 assert cryptopp != null || (nss != null && nspr != null);
 
 let
-  shouldUsePkg = pkg: if pkg != null && pkg.meta.available then pkg else null;
+  shouldUsePkg = pkg: if pkg != null && lib.meta.availableOn stdenv.hostPlatform pkg then pkg else null;
 
   optYasm = shouldUsePkg yasm;
   optExpat = shouldUsePkg expat;
diff --git a/nixpkgs/pkgs/tools/filesystems/fuse-overlayfs/default.nix b/nixpkgs/pkgs/tools/filesystems/fuse-overlayfs/default.nix
index a35ad566e506..b417c9654292 100644
--- a/nixpkgs/pkgs/tools/filesystems/fuse-overlayfs/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/fuse-overlayfs/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fuse-overlayfs";
-  version = "1.12";
+  version = "1.13";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-k9ws3m0stPqzmi3WOAWH3RfQywlOa6l5SFvloanf5e0=";
+    hash = "sha256-ngpC1KtUsIJOfpJ9dSqZn9XhKkJSpp2/6RBz/RlZ+A0=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/nixpkgs/pkgs/tools/filesystems/garage/default.nix b/nixpkgs/pkgs/tools/filesystems/garage/default.nix
index ef4a46868cad..0ac025f37a32 100644
--- a/nixpkgs/pkgs/tools/filesystems/garage/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/garage/default.nix
@@ -57,7 +57,7 @@ let
       "sqlite"
     ]);
 
-    passthru = nixosTests.garage;
+    passthru.tests = nixosTests.garage;
 
     meta = {
       description = "S3-compatible object store for small self-hosted geo-distributed deployments";
@@ -83,13 +83,13 @@ in
 
     garage_0_7 = garage_0_7_3;
 
-    garage_0_8_2 = generic {
-      version = "0.8.2";
-      sha256 = "sha256-IlDWbNWI1yXvPPF3HIqQvo79M2FQCtoX1wRLJrDbd9k=";
-      cargoSha256 = "sha256-6l4tDBMcOvckTkEO05rman4hHlmVbBt1nCeX5/dETKk=";
+    garage_0_8_3 = generic {
+      version = "0.8.3";
+      sha256 = "sha256-NxkFj76L+LpCWzOWbnN3zdhw9Q16uzPibDs+C+voM/0=";
+      cargoSha256 = "sha256-hbBuUjdlw//s6d24dPBu3R/BTJvmOW1B7tSIXNxLXlU=";
     };
 
-    garage_0_8 = garage_0_8_2;
+    garage_0_8 = garage_0_8_3;
 
     garage = garage_0_8;
   }
diff --git a/nixpkgs/pkgs/tools/filesystems/mount-zip/default.nix b/nixpkgs/pkgs/tools/filesystems/mount-zip/default.nix
index 678abe4892cd..a6577e900733 100644
--- a/nixpkgs/pkgs/tools/filesystems/mount-zip/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/mount-zip/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "mount-zip";
-  version = "1.0.8";
+  version = "1.0.9";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "mount-zip";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-+slN5eedSddYKgiNLq4KZ5BXwvGQw9859sVfkcIBYeo=";
+    hash = "sha256-dc1Cpyh4ctPPYo4cxH81mqNlomtzjiHHfkh52NPzq80=";
   };
 
   nativeBuildInputs = [ boost gcc icu pandoc pkg-config ];
diff --git a/nixpkgs/pkgs/tools/filesystems/stratisd/Cargo.lock b/nixpkgs/pkgs/tools/filesystems/stratisd/Cargo.lock
index 3cd26958eda6..97a211387195 100644
--- a/nixpkgs/pkgs/tools/filesystems/stratisd/Cargo.lock
+++ b/nixpkgs/pkgs/tools/filesystems/stratisd/Cargo.lock
@@ -119,7 +119,7 @@ checksum = "cc6dde6e4ed435a4c1ee4e73592f5ba9da2151af10076cc04858746af9352d09"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.27",
+ "syn 2.0.29",
 ]
 
 [[package]]
@@ -357,8 +357,6 @@ version = "0.9.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b"
 dependencies = [
- "futures-channel",
- "futures-util",
  "libc",
  "libdbus-sys",
  "winapi",
@@ -551,7 +549,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.27",
+ "syn 2.0.29",
 ]
 
 [[package]]
@@ -1238,13 +1236,13 @@ checksum = "5d25439cd7397d044e2748a6fe2432b5e85db703d6d097bd014b3c0ad1ebff0b"
 
 [[package]]
 name = "serde_derive"
-version = "1.0.175"
+version = "1.0.188"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b23f7ade6f110613c0d63858ddb8b94c1041f550eab58a16b371bdf2c9c80ab4"
+checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.27",
+ "syn 2.0.29",
 ]
 
 [[package]]
@@ -1311,7 +1309,7 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
 
 [[package]]
 name = "stratisd"
-version = "3.5.8"
+version = "3.5.9"
 dependencies = [
  "assert_cmd",
  "assert_matches",
@@ -1359,7 +1357,7 @@ dependencies = [
 
 [[package]]
 name = "stratisd_proc_macros"
-version = "0.2.0"
+version = "0.2.1"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1385,9 +1383,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.27"
+version = "2.0.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b60f673f44a8255b9c8c657daf66a596d435f2da81a555b06dc644d080ba45e0"
+checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1448,7 +1446,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.27",
+ "syn 2.0.29",
 ]
 
 [[package]]
@@ -1533,7 +1531,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.27",
+ "syn 2.0.29",
  "wasm-bindgen-shared",
 ]
 
@@ -1555,7 +1553,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.27",
+ "syn 2.0.29",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
diff --git a/nixpkgs/pkgs/tools/filesystems/stratisd/default.nix b/nixpkgs/pkgs/tools/filesystems/stratisd/default.nix
index 892591576dc4..a9e5e4ca3680 100644
--- a/nixpkgs/pkgs/tools/filesystems/stratisd/default.nix
+++ b/nixpkgs/pkgs/tools/filesystems/stratisd/default.nix
@@ -28,13 +28,13 @@
 
 stdenv.mkDerivation rec {
   pname = "stratisd";
-  version = "3.5.8";
+  version = "3.5.9";
 
   src = fetchFromGitHub {
     owner = "stratis-storage";
     repo = pname;
     rev = "refs/tags/stratisd-v${version}";
-    hash = "sha256-/Yqruz8gUyfL6zXYwlNvXa9feLBOOT4q4Gl/jxt1cMs=";
+    hash = "sha256-E4bBrbkqEh2twolPIHpHxphMG3bnDj0tjEBUWhrwL+M=";
   };
 
   cargoDeps = rustPlatform.importCargoLock {
diff --git a/nixpkgs/pkgs/tools/games/ps3iso-utils/default.nix b/nixpkgs/pkgs/tools/games/ps3iso-utils/default.nix
new file mode 100644
index 000000000000..63093b59b2cc
--- /dev/null
+++ b/nixpkgs/pkgs/tools/games/ps3iso-utils/default.nix
@@ -0,0 +1,38 @@
+{ stdenv
+, fetchFromGitHub
+, unstableGitUpdater
+, lib
+}:
+stdenv.mkDerivation {
+  pname = "ps3iso-utils";
+  version = "277db7de";
+
+  src = fetchFromGitHub {
+    owner = "bucanero";
+    repo = "ps3iso-utils";
+    rev = "878090980a9042c61901920fed1b034af215e8c7";
+    hash = "sha256-HUx5BqHBvVMUHReuJL0RcyxXOnufSt1Zi/ieAlI2eoc=";
+  };
+
+  buildPhase = ''
+    mkdir -p bin/
+    find . -type f -name "*.c" -exec \
+    sh -c 'OFILE=`basename "{}" ".c"` && $CC "{}" -o bin/"$OFILE"' \;
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp bin/* $out/bin
+  '';
+
+  passthru.updateScript = unstableGitUpdater { };
+
+  meta = with lib; {
+    description = "Estwald's PS3ISO utilities";
+    homepage = "https://github.com/bucanero/ps3iso-utils";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ soupglasses ];
+    platforms = platforms.all;
+  };
+}
+
diff --git a/nixpkgs/pkgs/tools/graphics/pikchr/default.nix b/nixpkgs/pkgs/tools/graphics/pikchr/default.nix
index d750d243fc36..5e390ce12cd3 100644
--- a/nixpkgs/pkgs/tools/graphics/pikchr/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/pikchr/default.nix
@@ -52,5 +52,6 @@ stdenv.mkDerivation {
     license = licenses.bsd0;
     maintainers = with maintainers; [ fgaz ];
     platforms = platforms.all;
+    mainProgram = "pikchr";
   };
 }
diff --git a/nixpkgs/pkgs/tools/graphics/spirv-cross/default.nix b/nixpkgs/pkgs/tools/graphics/spirv-cross/default.nix
index 265c6365d6fb..1bf20910cf54 100644
--- a/nixpkgs/pkgs/tools/graphics/spirv-cross/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/spirv-cross/default.nix
@@ -2,17 +2,22 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "spirv-cross";
-  version = "1.3.250.0";
+  version = "1.3.261.0";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "SPIRV-Cross";
     rev = "sdk-${finalAttrs.version}";
-    hash = "sha256-H4UkR/EiBWpdhdPHNBrdRkl4eN8kD9gEOzpnwfFSdpI=";
+    hash = "sha256-abVqLovvcKBJhGhSCbyD5mc1DSfvh4TWssGxi52ukQ8=";
   };
 
   nativeBuildInputs = [ cmake python3 ];
 
+  postFixup = ''
+    substituteInPlace $out/lib/pkgconfig/*.pc \
+      --replace '=''${prefix}//' '=/'
+  '';
+
   meta = with lib; {
     description = "A tool designed for parsing and converting SPIR-V to other shader languages";
     homepage = "https://github.com/KhronosGroup/SPIRV-Cross";
diff --git a/nixpkgs/pkgs/tools/graphics/svgbob/default.nix b/nixpkgs/pkgs/tools/graphics/svgbob/default.nix
index 0ee757f5c812..e5974d04e1ae 100644
--- a/nixpkgs/pkgs/tools/graphics/svgbob/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/svgbob/default.nix
@@ -2,15 +2,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "svgbob";
-  version = "0.7.0";
+  version = "0.7.2";
 
   src = fetchCrate {
     inherit version;
     crateName = "svgbob_cli";
-    sha256 = "sha256-iWcd+23/Ou7K2YUDf/MJx84LsVMXXqAkGNPs6B0RDqA=";
+    sha256 = "sha256-QWDi6cpADm5zOzz8hXuqOBtVrqb0DteWmiDXC6PsLS4=";
   };
 
-  cargoHash = "sha256-YbbVv2ln01nJfCaopKCwvVN7cgrcuaRHNXGHf9j9XUY=";
+  cargoHash = "sha256-Fj1qjG4SKlchUWW4q0tBC+9fHFFuY6MHngJCFz6J5JY=";
 
   postInstall = ''
     mv $out/bin/svgbob_cli $out/bin/svgbob
diff --git a/nixpkgs/pkgs/tools/graphics/termimage/default.nix b/nixpkgs/pkgs/tools/graphics/termimage/default.nix
new file mode 100644
index 000000000000..3703d5a993e5
--- /dev/null
+++ b/nixpkgs/pkgs/tools/graphics/termimage/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, rustPlatform
+, fetchCrate
+, installShellFiles
+, ronn
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "termimage";
+  version = "1.2.1";
+
+  src = fetchCrate {
+    inherit pname version;
+    hash = "sha256-1FOPe466GqQfiIpsQT9DJn+FupI2vy9b4+7p31ceY6M=";
+  };
+
+  cargoHash = "sha256-Up6wvkZJ4yLrXp/2sEAv5RqGbhLOQPNHO2vEy2Vhy+E=";
+
+  nativeBuildInputs = [
+    installShellFiles
+    ronn
+  ];
+
+  postInstall = ''
+    ronn --roff --organization="termimage developers" termimage.md
+    installManPage termimage.1
+  '';
+
+  meta = with lib; {
+    description = "Display images in your terminal";
+    homepage = "https://github.com/nabijaczleweli/termimage";
+    changelog = "https://github.com/nabijaczleweli/termimage/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ figsoda ];
+    mainProgram = "termimage";
+  };
+}
diff --git a/nixpkgs/pkgs/tools/graphics/textplots/default.nix b/nixpkgs/pkgs/tools/graphics/textplots/default.nix
index a0c5e72ac23c..689758de2031 100644
--- a/nixpkgs/pkgs/tools/graphics/textplots/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/textplots/default.nix
@@ -1,15 +1,15 @@
-{ fetchCrate, lib, rustPlatform }:
+{ lib, rustPlatform, fetchCrate }:
 
 rustPlatform.buildRustPackage rec {
   pname = "textplots";
-  version = "0.8.0";
+  version = "0.8.2";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "07lxnvg8g24r1j6h07w91j5lp0azngmb76lagk55y28br0y70qr4";
+    hash = "sha256-NBUp5kFiODqoJrg/JBPhtaVsOikppqt2jbd3C3RQ7qg=";
   };
 
-  cargoSha256 = "19xb1ann3bqx26nhjjvcwqdsvzg7lflg9fdrnlx05ndd2ip44flz";
+  cargoHash = "sha256-hHj3Da399gbRbgHgHcBE53HJusWoPbRA184tcCSJ4fc=";
 
   meta = with lib; {
     description = "Terminal plotting written in Rust";
diff --git a/nixpkgs/pkgs/tools/graphics/ueberzugpp/default.nix b/nixpkgs/pkgs/tools/graphics/ueberzugpp/default.nix
index 83332d47ae3d..dc6803e23488 100644
--- a/nixpkgs/pkgs/tools/graphics/ueberzugpp/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/ueberzugpp/default.nix
@@ -30,13 +30,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ueberzugpp";
-  version = "2.9.0";
+  version = "2.9.1";
 
   src = fetchFromGitHub {
     owner = "jstkdng";
     repo = "ueberzugpp";
     rev = "v${version}";
-    hash = "sha256-n1cSHHPCx6igJmBxAbny7gntZQk4cMb358zx7f2lMi8=";
+    hash = "sha256-zI+ctJHxjDbAKjCFDpNgpQ6m6pPffd7TV5gmfPP/yv4=";
   };
 
   strictDeps = true;
diff --git a/nixpkgs/pkgs/tools/graphics/vips/default.nix b/nixpkgs/pkgs/tools/graphics/vips/default.nix
index 1adfa8e7c1e1..8fd66f284cfa 100644
--- a/nixpkgs/pkgs/tools/graphics/vips/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/vips/default.nix
@@ -40,7 +40,7 @@
 
 stdenv.mkDerivation rec {
   pname = "vips";
-  version = "8.14.3";
+  version = "8.14.4";
 
   outputs = [ "bin" "out" "man" "dev" ] ++ lib.optionals (!stdenv.isDarwin) [ "devdoc" ];
 
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     owner = "libvips";
     repo = "libvips";
     rev = "v${version}";
-    hash = "sha256-2BE/cDQU/FP0Lo9/gZiG1IAskTbnhBtzbcL2dRziHmU=";
+    hash = "sha256-y2Tyi8rxal3s3jLURRGPuCAUuHITRPl1+zJZDp557+I=";
     # Remove unicode file names which leads to different checksums on HFS+
     # vs. other filesystems because of unicode normalisation.
     postFetch = ''
diff --git a/nixpkgs/pkgs/tools/graphics/vulkan-extension-layer/default.nix b/nixpkgs/pkgs/tools/graphics/vulkan-extension-layer/default.nix
index a80e216137db..96edbcad83f6 100644
--- a/nixpkgs/pkgs/tools/graphics/vulkan-extension-layer/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/vulkan-extension-layer/default.nix
@@ -1,19 +1,19 @@
-{ lib, stdenv, fetchFromGitHub, cmake, writeText, vulkan-headers, jq }:
+{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, writeText, vulkan-headers, jq, libX11, libXrandr, libxcb, wayland }:
 
 stdenv.mkDerivation rec {
   pname = "vulkan-extension-layer";
-  version = "1.3.254";
+  version = "1.3.261";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-ExtensionLayer";
     rev = "v${version}";
-    hash = "sha256-YWJk0sAvhmfVbJ6Nv24kzFL4SltQnggNjZ+NjaUO1Io=";
+    hash = "sha256-MeW7mmbjgqEvXEnAYzTNu4omC4fqq1fplIVjDpV2LcA=";
   };
 
-  nativeBuildInputs = [ cmake jq ];
+  nativeBuildInputs = [ cmake pkg-config jq ];
 
-  buildInputs = [ vulkan-headers ];
+  buildInputs = [ vulkan-headers libX11 libXrandr libxcb wayland ];
 
   # Help vulkan-loader find the validation layers
   setupHook = writeText "setup-hook" ''
diff --git a/nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/add-missing-macro-definition.patch b/nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/add-missing-macro-definition.patch
deleted file mode 100644
index 4d5717363303..000000000000
--- a/nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/add-missing-macro-definition.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/layersvt/api_dump.h b/layersvt/api_dump.h
-index 6e13b6de3..33bee96e7 100644
---- a/layersvt/api_dump.h
-+++ b/layersvt/api_dump.h
-@@ -60,6 +60,8 @@
- #include <unordered_set>
- #include <utility>
-
-+#define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
-+
- #ifdef ANDROID
-
- #include <android/log.h>
-diff --git a/layersvt/screenshot.cpp b/layersvt/screenshot.cpp
-index b9743371c..6ee65c576 100755
---- a/layersvt/screenshot.cpp
-+++ b/layersvt/screenshot.cpp
-@@ -44,6 +44,8 @@ using namespace std;
-
- #include "screenshot_parsing.h"
-
-+#define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
-+
- #ifdef ANDROID
-
- #include <android/log.h>
diff --git a/nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix b/nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix
index 8dec2e5130e7..072876e46dec 100644
--- a/nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix
@@ -5,6 +5,7 @@
 , python3
 , jq
 , expat
+, jsoncpp
 , libX11
 , libXdmcp
 , libXrandr
@@ -24,13 +25,13 @@
 
 stdenv.mkDerivation rec {
   pname = "vulkan-tools-lunarg";
-  version = "1.3.250";
+  version = "1.3.261";
 
   src = fetchFromGitHub {
    owner = "LunarG";
    repo = "VulkanTools";
    rev = "v${version}";
-   hash = "sha256-oI2ITvciuE/f8ojFpIwcH+HnYCasz43nKkER3wJxX+c=";
+   hash = "sha256-Kem3nWVaMeDEsidKYMsWr9Bu0yBgjjennDB0sKBDogA=";
    fetchSubmodules = true;
  };
 
@@ -38,6 +39,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     expat
+    jsoncpp
     libX11
     libXdmcp
     libXrandr
@@ -70,6 +72,8 @@ stdenv.mkDerivation rec {
     patchShebangs scripts/*
     sed -i '/^git /d' $update
     ./$update
+
+    substituteInPlace via/CMakeLists.txt --replace "jsoncpp_static" "jsoncpp"
   '';
 
   # Include absolute paths to layer libraries in their associated
@@ -82,14 +86,6 @@ stdenv.mkDerivation rec {
   '';
 
   patches = [
-    # Redefine an internal macro removed in vulkan-validation-layers
-    # FIXME: remove when fixed upstream
-    ./add-missing-macro-definition.patch
-
-    # Skip QNX-specific extension causing build failures
-    # FIXME: remove when fixed upstream
-    ./skip-qnx-extension.patch
-
     ./gtest.patch
   ];
 
diff --git a/nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/skip-qnx-extension.patch b/nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/skip-qnx-extension.patch
deleted file mode 100644
index 777b32f43af4..000000000000
--- a/nixpkgs/pkgs/tools/graphics/vulkan-tools-lunarg/skip-qnx-extension.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 209f3ec39..c711af38b 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -190,7 +190,7 @@ endif()
- # Define macro used for building vk.xml generated files
- function(run_vulkantools_vk_xml_generate dependency output)
-     add_custom_command(OUTPUT ${output}
--        COMMAND ${PYTHON_CMD} -B ${VULKANTOOLS_SCRIPTS_DIR}/vt_genvk.py -registry ${VULKAN_HEADERS_REGISTRY_DIRECTORY}/vk.xml -scripts ${VULKAN_HEADERS_REGISTRY_DIRECTORY} ${output}
-+        COMMAND ${PYTHON_CMD} -B ${VULKANTOOLS_SCRIPTS_DIR}/vt_genvk.py -registry ${VULKAN_HEADERS_REGISTRY_DIRECTORY}/vk.xml -scripts ${VULKAN_HEADERS_REGISTRY_DIRECTORY} ${output} -removeExtensions VK_QNX_external_memory_screen_buffer
-         DEPENDS ${VULKAN_HEADERS_REGISTRY_DIRECTORY}/vk.xml ${VULKAN_HEADERS_REGISTRY_DIRECTORY}/generator.py ${VULKANTOOLS_SCRIPTS_DIR}/${dependency} ${VULKANTOOLS_SCRIPTS_DIR}/vt_genvk.py ${VULKAN_HEADERS_REGISTRY_DIRECTORY}/reg.py
-     )
- endfunction()
diff --git a/nixpkgs/pkgs/tools/graphics/vulkan-tools/default.nix b/nixpkgs/pkgs/tools/graphics/vulkan-tools/default.nix
index 3f36e8abf7f9..9327bd9c9d6e 100644
--- a/nixpkgs/pkgs/tools/graphics/vulkan-tools/default.nix
+++ b/nixpkgs/pkgs/tools/graphics/vulkan-tools/default.nix
@@ -22,13 +22,13 @@
 
 stdenv.mkDerivation rec {
   pname = "vulkan-tools";
-  version = "1.3.254";
+  version = "1.3.261";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-Tools";
     rev = "v${version}";
-    hash = "sha256-MyYngyoIGpGu1jFN1GDm9BcFye1JRz1cN6SaZue1ZGQ=";
+    hash = "sha256-C5FVkI9F/dgIS8qp7VaOn9J2zoNLb1PnmgAemsVO6zM=";
   };
 
   nativeBuildInputs = [
@@ -86,6 +86,7 @@ stdenv.mkDerivation rec {
     # vulkaninfo loads libvulkan using dlopen, so we have to add it manually to RPATH
     "-DCMAKE_INSTALL_RPATH=${libraryPath}"
     "-DPKG_CONFIG_EXECUTABLE=${pkg-config}/bin/pkg-config"
+    "-DGLSLANG_INSTALL_DIR=${glslang}"
     # Hide dev warnings that are useless for packaging
     "-Wno-dev"
   ] ++ lib.optionals stdenv.isDarwin [
diff --git a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
index 3703c2edea46..19d5b1b96933 100644
--- a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ibus-m17n";
-  version = "1.4.19";
+  version = "1.4.22";
 
   src = fetchFromGitHub {
     owner = "ibus";
     repo = "ibus-m17n";
     rev = version;
-    sha256 = "sha256-e/nw6UGaxWpDCKwI5r8MuSZjrE6u/S5njZYilFa4zJI=";
+    sha256 = "sha256-wjWDqhhLqj77IxVpelChOEdUtneaGmL+IK2Sp3eObkA=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table-others/default.nix b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table-others/default.nix
index 89e4d3d15cd1..c997c20c8d26 100644
--- a/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table-others/default.nix
+++ b/nixpkgs/pkgs/tools/inputmethods/ibus-engines/ibus-table-others/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ibus-table-others";
-  version = "1.3.16";
+  version = "1.3.17";
 
   src = fetchurl {
     url = "https://github.com/moebiuscurve/ibus-table-others/releases/download/${version}/${pname}-${version}.tar.gz";
-    hash = "sha256-TybqFQ2EgYo4zCYXwDJ0dke7HSzkZXs0lG2zR2XmlG4=";
+    hash = "sha256-7//axHjQ1LgLpeWR4MTI8efLURm4Umj4JV3G33Y0m0g=";
   };
 
   nativeBuildInputs = [ pkg-config python3 ];
diff --git a/nixpkgs/pkgs/tools/misc/birdfont/default.nix b/nixpkgs/pkgs/tools/misc/birdfont/default.nix
index 096d8c785e91..69b5c53bd28e 100644
--- a/nixpkgs/pkgs/tools/misc/birdfont/default.nix
+++ b/nixpkgs/pkgs/tools/misc/birdfont/default.nix
@@ -1,17 +1,17 @@
 { lib, stdenv, fetchurl, pkg-config, python3, xmlbird,
 cairo, gdk-pixbuf, libgee, glib, gtk3, webkitgtk, libnotify, sqlite, vala,
-gobject-introspection, gsettings-desktop-schemas, wrapGAppsHook }:
+gobject-introspection, gsettings-desktop-schemas, wrapGAppsHook, autoPatchelfHook }:
 
 stdenv.mkDerivation rec {
   pname = "birdfont";
-  version = "2.32.3";
+  version = "2.33.1";
 
   src = fetchurl {
     url = "https://birdfont.org/releases/${pname}-${version}.tar.xz";
-    sha256 = "sha256-ZsYwDS7pgs635P3wPX/PCTuHLX3/Iu97HgVe+qFyjZw=";
+    sha256 = "sha256-vFXpZNvsXpz7saRp6ruhvsP50rmJ2Prr2M78+8oxQ9M=";
   };
 
-  nativeBuildInputs = [ python3 pkg-config vala gobject-introspection wrapGAppsHook ];
+  nativeBuildInputs = [ python3 pkg-config vala gobject-introspection wrapGAppsHook autoPatchelfHook ];
   buildInputs = [ xmlbird libgee cairo gdk-pixbuf glib gtk3 webkitgtk libnotify sqlite gsettings-desktop-schemas ];
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/misc/cfonts/default.nix b/nixpkgs/pkgs/tools/misc/cfonts/default.nix
index a4faf4866585..cbee66e68f4a 100644
--- a/nixpkgs/pkgs/tools/misc/cfonts/default.nix
+++ b/nixpkgs/pkgs/tools/misc/cfonts/default.nix
@@ -1,17 +1,14 @@
-{ lib
-, rustPlatform
-, fetchCrate
-}:
+{ lib, rustPlatform, fetchCrate }:
 rustPlatform.buildRustPackage rec {
   pname = "cfonts";
-  version = "1.1.0";
+  version = "1.1.2";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-STeLEHgggshhyLCfqiJmDcmwxqQ1AOGHj2ATliEY+DA=";
+    hash = "sha256-bnjrbcQ2MMZsM0rWWk+xkA58rSREHWfSvlGDAHKIPAw=";
   };
 
-  cargoHash = "sha256-GGi4OduO9FPIWllxlx4tK3lix36zF0FNDyptzftV0GY=";
+  cargoHash = "sha256-8NgEsFglt+JyP5D61mT4Z8SIbPATJskiEpn8tWy+yjk=";
 
   meta = with lib; {
     homepage = "https://github.com/dominikwilkowski/cfonts";
diff --git a/nixpkgs/pkgs/tools/misc/charasay/default.nix b/nixpkgs/pkgs/tools/misc/charasay/default.nix
index 84247a147c3d..c66605cc826c 100644
--- a/nixpkgs/pkgs/tools/misc/charasay/default.nix
+++ b/nixpkgs/pkgs/tools/misc/charasay/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "charasay";
-  version = "3.0.1";
+  version = "3.1.0";
 
   src = fetchFromGitHub {
     owner = "latipun7";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-Cq7pHW4CYGHdVAhscyiOHSdi5Lefk5ve32EOqS2oSRk=";
+    hash = "sha256-ijr6AvhoiYWHYTPUxSdBds9jBW1HEy1n7h6zH1VGP1c=";
   };
 
-  cargoHash = "sha256-/9ex5rIYtJVsuwpOpCZLgFSHEdntbnkOX1oRaZ02AOg=";
+  cargoHash = "sha256-HCHdiCeb4dqxQMWfYZV2k8Yq963vWfmL05BRpVYmIcg=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/tools/misc/citron/default.nix b/nixpkgs/pkgs/tools/misc/citron/default.nix
new file mode 100644
index 000000000000..17fa3c5e5a21
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/citron/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, rustPlatform
+, fetchCrate
+, dbus
+, installShellFiles
+, pkg-config
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "citron";
+  version = "0.15.0";
+
+  src = fetchCrate {
+    inherit pname version;
+    hash = "sha256-6wJ4UfiwpV9zFuBR8SYj6eBiRqQitFs7wRe5R51Z3SA=";
+  };
+
+  cargoHash = "sha256-xTmhgE4iHydhZBMrHWqQUcS9KDlZAzW2CmPGpJr40Fw=";
+
+  buildInputs = [ dbus ];
+
+  nativeBuildInputs = [ installShellFiles pkg-config ];
+
+  postInstall = ''
+    installManPage doc/citron.1
+  '';
+
+  meta = {
+    homepage = "https://git.sr.ht/~grtcdr/citron";
+    description = "System data via on-demand notifications";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ vuimuich ];
+    platforms = lib.platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/ckb-next/default.nix b/nixpkgs/pkgs/tools/misc/ckb-next/default.nix
index efd581a06cbc..f9309ecf81dd 100644
--- a/nixpkgs/pkgs/tools/misc/ckb-next/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ckb-next/default.nix
@@ -50,6 +50,7 @@ mkDerivation rec {
     homepage = "https://github.com/ckb-next/ckb-next";
     license = licenses.gpl2;
     platforms = platforms.linux;
+    mainProgram = "ckb-next";
     maintainers = with maintainers; [ ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/clac/default.nix b/nixpkgs/pkgs/tools/misc/clac/default.nix
index acf9b6b867de..0c4676323003 100644
--- a/nixpkgs/pkgs/tools/misc/clac/default.nix
+++ b/nixpkgs/pkgs/tools/misc/clac/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "clac";
-  version = "0.3.3";
+  version = "0.3.3-unstable-2021-09-06";
 
   src = fetchFromGitHub {
     owner = "soveran";
     repo = "clac";
-    rev = version;
-    sha256 = "rsag8MWl/udwXC0Gj864fAuQ6ts1gzrN2N/zelazqjE=";
+    rev = "beae8c4bc89912f4cd66bb875585fa471692cd54";
+    sha256 = "XaULDkFF9OZW7Hbh60wbGgvCJ6L+3gZNGQ9uQv3G0zU=";
   };
 
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/nixpkgs/pkgs/tools/misc/crudini/default.nix b/nixpkgs/pkgs/tools/misc/crudini/default.nix
index 6527a01e43b7..1e25413b151f 100644
--- a/nixpkgs/pkgs/tools/misc/crudini/default.nix
+++ b/nixpkgs/pkgs/tools/misc/crudini/default.nix
@@ -1,32 +1,52 @@
-{ lib, fetchFromGitHub, python3Packages, help2man, installShellFiles }:
+{ lib
+, fetchFromGitHub
+, fetchpatch
+, python3Packages
+, help2man
+, installShellFiles
+}:
 
 python3Packages.buildPythonApplication rec {
   pname = "crudini";
-  version = "0.9.3";
+  version = "0.9.4";
+  format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "pixelb";
     repo = "crudini";
     rev = version;
-    sha256 = "0298hvg0fpk0m0bjpwryj3icksbckwqqsr9w1ain55wf5s0v24k3";
+    hash = "sha256-jbTOaCF/ZqRpM0scDBBAcV5bSYg/QhBPbM9R5cONZ2o=";
   };
 
-  nativeBuildInputs = [ help2man installShellFiles ];
-
-  propagatedBuildInputs = with python3Packages; [ iniparse ];
+  patches = [
+    (fetchpatch {
+      name = "add-missing-install-file.patch";
+      url = "https://github.com/pixelb/crudini/commit/d433e4d9c4106ae26985e3f4b2efa593bdd5c274.patch";
+      hash = "sha256-aDGzoG4i2tvYeL8m1WoqwNFNHe4xR1dGk+XDt3f3i5E=";
+    })
+  ];
 
   postPatch = ''
-    substituteInPlace crudini-help \
-      --replace ./crudini $out/bin/crudini
-    substituteInPlace tests/test.sh \
-      --replace ..: $out/bin:
+    patchShebangs crudini.py crudini-help tests/test.sh
   '';
 
+  env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+  nativeBuildInputs = [
+    help2man
+    installShellFiles
+    python3Packages.setuptools
+    python3Packages.setuptools-scm
+    python3Packages.wheel
+  ];
+
+  propagatedBuildInputs = with python3Packages; [ iniparse ];
+
   postInstall = ''
     # this just creates the man page
     make all
 
-    install -Dm444 -t $out/share/doc/${pname} README EXAMPLES
+    install -Dm444 -t $out/share/doc/${pname} README.md EXAMPLES
     installManPage *.1
   '';
 
@@ -34,7 +54,7 @@ python3Packages.buildPythonApplication rec {
     runHook preCheck
 
     pushd tests >/dev/null
-    bash ./test.sh
+    ./test.sh
     popd >/dev/null
 
     runHook postCheck
@@ -45,5 +65,6 @@ python3Packages.buildPythonApplication rec {
     homepage = "https://www.pixelbeat.org/programs/crudini/";
     license = licenses.gpl2Only;
     maintainers = with maintainers; [ peterhoeg ];
+    mainProgram = "crudini";
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/ddccontrol/default.nix b/nixpkgs/pkgs/tools/misc/ddccontrol/default.nix
index 0f45361e3db6..f920e3afc696 100644
--- a/nixpkgs/pkgs/tools/misc/ddccontrol/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ddccontrol/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ddccontrol";
-  version = "0.6.1";
+  version = "0.6.2";
 
   src = fetchFromGitHub {
     owner = "ddccontrol";
     repo = "ddccontrol";
     rev = version;
-    sha256 = "sha256-En2e0FDKLpMjuxa2aXuvI6h7d+D1D5x1dDg96924/qM=";
+    sha256 = "sha256-Me7E5dUo3tnuXInWF19AmrcyKMtBlugVmvQHULMMMoA=";
   };
 
   nativeBuildInputs = [
@@ -46,10 +46,6 @@ stdenv.mkDerivation rec {
 
     substituteInPlace src/ddcpci/Makefile.am    \
        --replace "chmod 4711" "chmod 0711"
-  '' + lib.optionalString (lib.versionAtLeast "0.6.1" version) ''
-    # Upstream PR: https://github.com/ddccontrol/ddccontrol/pull/115
-    substituteInPlace src/lib/Makefile.am       \
-      --replace "/etc/" "\$""{sysconfdir}/"
   '';
 
   preConfigure = ''
diff --git a/nixpkgs/pkgs/tools/misc/debootstrap/default.nix b/nixpkgs/pkgs/tools/misc/debootstrap/default.nix
index 2f34fb1e5645..04c19d93af99 100644
--- a/nixpkgs/pkgs/tools/misc/debootstrap/default.nix
+++ b/nixpkgs/pkgs/tools/misc/debootstrap/default.nix
@@ -1,5 +1,26 @@
-{ lib, stdenv, fetchFromGitLab, dpkg, gawk, perl, wget, binutils, bzip2, coreutils, util-linux
-, gnugrep, gnupg1, gnutar, gnused, gzip, xz, makeWrapper }:
+{ lib
+, stdenv
+, fetchFromGitLab
+, dpkg
+, gawk
+, perl
+, wget
+, binutils
+, bzip2
+, coreutils
+, util-linux
+, gnugrep
+, gnupg1
+, gnutar
+, gnused
+, gzip
+, xz
+, makeWrapper
+, nix-update-script
+, testers
+, debootstrap
+}:
+
 # USAGE like this: debootstrap sid /tmp/target-chroot-directory
 # There is also cdebootstrap now. Is that easier to maintain?
 let binPath = lib.makeBinPath [
@@ -19,14 +40,14 @@ let binPath = lib.makeBinPath [
   ];
 in stdenv.mkDerivation rec {
   pname = "debootstrap";
-  version = "1.0.128";
+  version = "1.0.131";
 
   src = fetchFromGitLab {
     domain = "salsa.debian.org";
     owner = "installer-team";
     repo = pname;
-    rev = version;
-    sha256 = "sha256-WybWWyRPreokjUAdWfZ2MUjgZhF1GTncpbLajQ3rh0E=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-rwNcrS2GzVs0JYxeHcpLMG9FDwSpthNmZIemn95hC6g=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -62,7 +83,15 @@ in stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  passthru = {
+    updateScript = nix-update-script { };
+    tests.version = testers.testVersion {
+      package = debootstrap;
+    };
+  };
+
   meta = with lib; {
+    changelog = "https://salsa.debian.org/installer-team/debootstrap/-/blob/${version}/debian/changelog";
     description = "Tool to create a Debian system in a chroot";
     homepage = "https://wiki.debian.org/Debootstrap";
     license = licenses.mit;
diff --git a/nixpkgs/pkgs/tools/misc/diffoci/default.nix b/nixpkgs/pkgs/tools/misc/diffoci/default.nix
new file mode 100644
index 000000000000..5d1678a017d3
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/diffoci/default.nix
@@ -0,0 +1,27 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "diffoci";
+  version = "0.1.1";
+
+  src = fetchFromGitHub {
+    owner = "reproducible-containers";
+    repo = "diffoci";
+    rev = "v${version}";
+    hash = "sha256-xmsfqlp/bosCjT83MXkA7uNlPgGYlKXOdnxVhm648zo=";
+  };
+
+  vendorHash = "sha256-w3/Je8iIT6CEusfIfGv9TAWkePY5TtOQS0rQYH92sAs=";
+
+  ldflags = [ "-s" "-w" ];
+
+  meta = with lib; {
+    description = "Diff for Docker and OCI container images";
+    homepage = "https://github.com/reproducible-containers/diffoci/";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ jk ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/diffoscope/default.nix b/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
index 284570617032..85e148049fa9 100644
--- a/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
+++ b/nixpkgs/pkgs/tools/misc/diffoscope/default.nix
@@ -78,11 +78,11 @@
 # Note: when upgrading this package, please run the list-missing-tools.sh script as described below!
 python3.pkgs.buildPythonApplication rec {
   pname = "diffoscope";
-  version = "247";
+  version = "248";
 
   src = fetchurl {
     url = "https://diffoscope.org/archive/diffoscope-${version}.tar.bz2";
-    hash = "sha256-sbLny1eK/eyCQKeSUyQc3DTvlHeCp8rAgrx681KjvNQ=";
+    hash = "sha256-Lub+SIr0EyY4YmPsoLXWavXJhcpmK5VRb6eEnozZ0XQ=";
   };
 
   outputs = [
diff --git a/nixpkgs/pkgs/tools/misc/ent/default.nix b/nixpkgs/pkgs/tools/misc/ent/default.nix
index 6904d4667721..bd9dfeafea6b 100644
--- a/nixpkgs/pkgs/tools/misc/ent/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ent/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
 
   # Work around the "unpacker appears to have produced no directories"
   # case that happens when the archive doesn't have a subdirectory.
-  setSourceRoot = "sourceRoot=`pwd`";
+  sourceRoot = ".";
 
   nativeBuildInputs = [ unzip ];
 
diff --git a/nixpkgs/pkgs/tools/misc/esptool/default.nix b/nixpkgs/pkgs/tools/misc/esptool/default.nix
index d7bf8a9b9031..a06074b688d6 100644
--- a/nixpkgs/pkgs/tools/misc/esptool/default.nix
+++ b/nixpkgs/pkgs/tools/misc/esptool/default.nix
@@ -1,38 +1,56 @@
 { lib
 , fetchFromGitHub
 , python3
+, softhsm
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "esptool";
-  version = "4.5.1";
+  version = "4.6.2";
+
+  format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "espressif";
     repo = "esptool";
     rev = "v${version}";
-    hash = "sha256-FKFw7czXzC8F3OXjlLoJEFaqsSgqWz0ZEqd7KjCy5Ik=";
+    hash = "sha256-3uvTyJrGCpulu/MR/VfCgnIxibxJj2ehBIBSveq7EfI=";
   };
 
+  postPatch = ''
+    patchShebangs ci
+
+    substituteInPlace test/test_espsecure_hsm.py \
+      --replace "/usr/lib/softhsm" "${lib.getLib softhsm}/lib/softhsm"
+  '';
+
   propagatedBuildInputs = with python3.pkgs; [
     bitstring
     cryptography
     ecdsa
     pyserial
     reedsolo
+    pyyaml
+    python-pkcs11
   ];
 
   nativeCheckInputs = with python3.pkgs; [
     pyelftools
     pytestCheckHook
+    softhsm
   ];
 
   # tests mentioned in `.github/workflows/test_esptool.yml`
   checkPhase = ''
     runHook preCheck
 
+    export SOFTHSM2_CONF=$(mktemp)
+    echo "directories.tokendir = $(mktemp -d)" > "$SOFTHSM2_CONF"
+    ./ci/setup_softhsm2.sh
+
     pytest test/test_imagegen.py
     pytest test/test_espsecure.py
+    pytest test/test_espsecure_hsm.py
     pytest test/test_merge_bin.py
     pytest test/test_image_info.py
     pytest test/test_modules.py
diff --git a/nixpkgs/pkgs/tools/misc/eza/default.nix b/nixpkgs/pkgs/tools/misc/eza/default.nix
index 8ee47ac4cd70..dc03e7fa0584 100644
--- a/nixpkgs/pkgs/tools/misc/eza/default.nix
+++ b/nixpkgs/pkgs/tools/misc/eza/default.nix
@@ -14,16 +14,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "eza";
-  version = "0.10.8";
+  version = "0.10.9";
 
   src = fetchFromGitHub {
     owner = "eza-community";
     repo = "eza";
     rev = "v${version}";
-    hash = "sha256-3g4eauJqnbIqWtDmRvKsDiZh1eAz171FP9idF2nBXLQ=";
+    hash = "sha256-ssP4jPO7Yt98ZCKOpQi7RwKfUBOHQ1dK5rzWxAJD9Jc=";
   };
 
-  cargoHash = "sha256-HS/nmLxr5zvyneiSJk9tPUhszF5vFwSo5HMsRql9I38=";
+  cargoHash = "sha256-XxqAAs44iZuqcAsixIqEgUHWytwS9umuM/KIPosrfRo=";
 
   nativeBuildInputs = [ cmake pkg-config installShellFiles pandoc ];
   buildInputs = [ zlib ]
@@ -57,6 +57,7 @@ rustPlatform.buildRustPackage rec {
     '';
     homepage = "https://github.com/eza-community/eza";
     license = licenses.mit;
+    mainProgram = "eza";
     maintainers = with maintainers; [ cafkafk ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/faketty/default.nix b/nixpkgs/pkgs/tools/misc/faketty/default.nix
index 2c25dc6b6a2b..6ec144d5d693 100644
--- a/nixpkgs/pkgs/tools/misc/faketty/default.nix
+++ b/nixpkgs/pkgs/tools/misc/faketty/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "faketty";
-  version = "1.0.12";
+  version = "1.0.13";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-1q1TOwKC2Tse/Ct/6Nw7YiOviJyBZAsOBEp3sT4N0ss=";
+    hash = "sha256-jV5b6mB81Nz0Q+Toj5DTQq2QcM+EoQ7jRYV/OXgtemA=";
   };
 
-  cargoSha256 = "sha256-x8+7sZJnA+kEwKAu8DBF8z7JhWjJ6ZFiLaQP8kFOt08=";
+  cargoHash = "sha256-9t1Km/ZXzxyO72CaWM81fWGcFkri7F+wMAVom0GV/YM=";
 
   postPatch = ''
     patchShebangs tests/test.sh
@@ -18,6 +18,7 @@ rustPlatform.buildRustPackage rec {
   meta = with lib; {
     description = "A wrapper to execute a command in a pty, even if redirecting the output";
     homepage = "https://github.com/dtolnay/faketty";
+    changelog = "https://github.com/dtolnay/faketty/releases/tag/${version}";
     license = with licenses; [ asl20 /* or */ mit ];
     maintainers = with maintainers; [ figsoda ];
   };
diff --git a/nixpkgs/pkgs/tools/misc/fastfetch/default.nix b/nixpkgs/pkgs/tools/misc/fastfetch/default.nix
index 731cd459d41c..2a222f155662 100644
--- a/nixpkgs/pkgs/tools/misc/fastfetch/default.nix
+++ b/nixpkgs/pkgs/tools/misc/fastfetch/default.nix
@@ -42,13 +42,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "fastfetch";
-  version = "2.0.3";
+  version = "2.0.5";
 
   src = fetchFromGitHub {
     owner = "fastfetch-cli";
     repo = "fastfetch";
     rev = finalAttrs.version;
-    hash = "sha256-Zh77m1jezjKJPC8Ua3Uv3w7MIeuLJ6U9WBFzT0uuLSo=";
+    hash = "sha256-KYicfYpJiO7ZfQ2vlGDKuiNprIwXnxz6Razf3GrjRq8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/misc/file/32-bit-time_t.patch b/nixpkgs/pkgs/tools/misc/file/32-bit-time_t.patch
new file mode 100644
index 000000000000..19c595215d65
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/file/32-bit-time_t.patch
@@ -0,0 +1,38 @@
+https://github.com/file/file/commit/218fdf813fd5ccecbb8887a1b62509cd1c6dd3a1.patch
+
+From 218fdf813fd5ccecbb8887a1b62509cd1c6dd3a1 Mon Sep 17 00:00:00 2001
+From: Christos Zoulas <christos@zoulas.com>
+Date: Fri, 28 Jul 2023 14:38:25 +0000
+Subject: [PATCH] deal with 32 bit time_t
+
+---
+ src/file.h | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/src/file.h b/src/file.h
+index 2e0494d2f..78f574ea1 100644
+--- a/src/file.h
++++ b/src/file.h
+@@ -27,7 +27,7 @@
+  */
+ /*
+  * file.h - definitions for file(1) program
+- * @(#)$File: file.h,v 1.247 2023/07/27 19:40:22 christos Exp $
++ * @(#)$File: file.h,v 1.248 2023/07/28 14:38:25 christos Exp $
+  */
+ 
+ #ifndef __file_h__
+@@ -159,9 +159,11 @@
+ /*
+  * Dec 31, 23:59:59 9999
+  * we need to make sure that we don't exceed 9999 because some libc
+- * implementations like muslc crash otherwise
++ * implementations like muslc crash otherwise. If you are unlucky
++ * to be running on a system with a 32 bit time_t, then it is even less.
+  */
+-#define	MAX_CTIME	CAST(time_t, 0x3afff487cfULL)
++#define	MAX_CTIME \
++    CAST(time_t, sizeof(time_t) > 4 ? 0x3afff487cfULL : 0x7fffffffULL)
+ 
+ #define FILE_BADSIZE CAST(size_t, ~0ul)
+ #define MAXDESC	64		/* max len of text description/MIME type */
diff --git a/nixpkgs/pkgs/tools/misc/file/default.nix b/nixpkgs/pkgs/tools/misc/file/default.nix
index 7fad2c381c3f..6026f3c7adaa 100644
--- a/nixpkgs/pkgs/tools/misc/file/default.nix
+++ b/nixpkgs/pkgs/tools/misc/file/default.nix
@@ -7,29 +7,22 @@
 
 stdenv.mkDerivation rec {
   pname = "file";
-  version = "5.44";
+  version = "5.45";
 
   src = fetchurl {
     urls = [
       "https://astron.com/pub/file/${pname}-${version}.tar.gz"
       "https://distfiles.macports.org/file/${pname}-${version}.tar.gz"
     ];
-    sha256 = "sha256-N1HH+6jbyDHLjXzIr/IQNUWbjOUVXviwiAon0ChHXzs=";
+    hash = "sha256-/Jf1ECm7DiyfTjv/79r2ePDgOe6HK53lwAKm0Jx4TYI=";
   };
 
   outputs = [ "out" "dev" "man" ];
 
   patches = [
-    # Backport fix to identification for pyzip files.
-    # Needed for strip-nondeterminism.
-    # https://salsa.debian.org/reproducible-builds/strip-nondeterminism/-/issues/20
-    ./pyzip.patch
-
-    # Backport fix for --uncompress always detecting contents as "empty"
-    (fetchurl {
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sys-apps/file/files/file-5.44-decompress-empty.patch?h=dfc57da515a2aaf085bea68267cc727f1bfaa691";
-      hash = "sha256-fUzRQAlLWczBmR5iA1Gk66mHjP40MJcMdgCtm2+u1SQ=";
-    })
+    # Upstream patch to fix 32-bit tests.
+    # Will be included in 5.46+ releases.
+    ./32-bit-time_t.patch
   ];
 
   strictDeps = true;
diff --git a/nixpkgs/pkgs/tools/misc/file/pyzip.patch b/nixpkgs/pkgs/tools/misc/file/pyzip.patch
deleted file mode 100644
index 57f9e7ef8b64..000000000000
--- a/nixpkgs/pkgs/tools/misc/file/pyzip.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From dc71304b3b1fd2ed5f7098d59fb7f6ef10cfdc85 Mon Sep 17 00:00:00 2001
-From: Christos Zoulas <christos@zoulas.com>
-Date: Sat, 31 Dec 2022 20:24:08 +0000
-Subject: [PATCH] pyzip improvements (FC Stegerman)
-
----
- magic/Magdir/archive | 9 +++++++--
- 1 file changed, 7 insertions(+), 2 deletions(-)
-
-diff --git a/magic/Magdir/archive b/magic/Magdir/archive
-index a706556d5..d58201e69 100644
---- a/magic/Magdir/archive
-+++ b/magic/Magdir/archive
-@@ -1,5 +1,5 @@
- #------------------------------------------------------------------------------
--# $File: archive,v 1.179 2022/12/21 15:50:59 christos Exp $
-+# $File: archive,v 1.180 2022/12/31 20:24:08 christos Exp $
- # archive:  file(1) magic for archive formats (see also "msdos" for self-
- #           extracting compressed archives)
- #
-@@ -1876,9 +1876,14 @@
- # https://en.wikipedia.org/wiki/ZIP_(file_format)#End_of_central_directory_record_(EOCD)
- # by Michal Gorny <mgorny@gentoo.org>
- -2	uleshort	0
-->&-22	string	PK\005\006	Zip archive, with extra data prepended
-+>&-22	string	PK\005\006
-+# without #!
-+>>0	string	!#!	Zip archive, with extra data prepended
- !:mime	application/zip
- !:ext zip/cbz
-+# with #!
-+>>0	string/w	#!\ 	a
-+>>>&-1	string/T	x	%s script executable (Zip archive)
- 
- # ACE archive (from http://www.wotsit.org/download.asp?f=ace)
- # by Stefan `Sec` Zehl <sec@42.org>
diff --git a/nixpkgs/pkgs/tools/misc/flexoptix-app/default.nix b/nixpkgs/pkgs/tools/misc/flexoptix-app/default.nix
index 45f28b8ee442..6fb4c5df775d 100644
--- a/nixpkgs/pkgs/tools/misc/flexoptix-app/default.nix
+++ b/nixpkgs/pkgs/tools/misc/flexoptix-app/default.nix
@@ -1,4 +1,4 @@
-{ lib, appimageTools, fetchurl, nodePackages }: let
+{ lib, appimageTools, fetchurl, asar }: let
   pname = "flexoptix-app";
   version = "5.13.4";
 
@@ -18,9 +18,9 @@
       ${oA.buildCommand}
 
       # Get rid of the autoupdater
-      ${nodePackages.asar}/bin/asar extract $out/resources/app.asar app
+      ${asar}/bin/asar extract $out/resources/app.asar app
       sed -i 's/async isUpdateAvailable.*/async isUpdateAvailable(updateInfo) { return false;/g' app/node_modules/electron-updater/out/AppUpdater.js
-      ${nodePackages.asar}/bin/asar pack app $out/resources/app.asar
+      ${asar}/bin/asar pack app $out/resources/app.asar
     '';
   });
 
diff --git a/nixpkgs/pkgs/tools/misc/fsearch/default.nix b/nixpkgs/pkgs/tools/misc/fsearch/default.nix
index 6af61b122337..a9e3b6caa352 100644
--- a/nixpkgs/pkgs/tools/misc/fsearch/default.nix
+++ b/nixpkgs/pkgs/tools/misc/fsearch/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fsearch";
-  version = "0.2.2";
+  version = "0.2.3";
 
   src = fetchFromGitHub {
     owner = "cboxdoerfer";
     repo = pname;
     rev = version;
-    hash = "sha256-1nu6J5eHVpPHGXcFKHSnUhAJccxABBht5H2bpBx42og=";
+    hash = "sha256-VBcoDxh4ip2zLBcXVHDe9s1lVRQF4bZJKsGUt6sPcos=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/misc/fuc/add_missing_feature.patch b/nixpkgs/pkgs/tools/misc/fuc/add_missing_feature.patch
deleted file mode 100644
index c765dde01428..000000000000
--- a/nixpkgs/pkgs/tools/misc/fuc/add_missing_feature.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff --git a/cpz/src/main.rs b/cpz/src/main.rs
-index 4e7ce8d..0d0922d 100644
---- a/cpz/src/main.rs
-+++ b/cpz/src/main.rs
-@@ -1,5 +1,6 @@
- #![feature(once_cell)]
- #![feature(let_chains)]
-+#![feature(main_separator_str)]
- 
- use std::{
-     borrow::Cow,
diff --git a/nixpkgs/pkgs/tools/misc/fuc/default.nix b/nixpkgs/pkgs/tools/misc/fuc/default.nix
index 00d95add4f39..33e34e2b6323 100644
--- a/nixpkgs/pkgs/tools/misc/fuc/default.nix
+++ b/nixpkgs/pkgs/tools/misc/fuc/default.nix
@@ -7,18 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "fuc";
-  version = "1.1.6";
+  version = "1.1.7";
 
   src = fetchFromGitHub {
     owner = "SUPERCILEX";
     repo = "fuc";
     rev = version;
-    hash = "sha256-kbEIZljIWs/GYOQ/XCBgWsBcEwm05bf7bZmAwq+eWXo=";
+    hash = "sha256-Ii0X2QGvUE+wDD7pKN3Mws4VqnwGJFdpjjv3oJRn/pY=";
   };
 
-  patches = [ ./add_missing_feature.patch ];
-
-  cargoHash = "sha256-AD3LdBMmyf6xM7sWUDxYZs3NltnAkEfAdxYLAbnRM4M=";
+  cargoHash = "sha256-08MQCKfkusnE9fuuJOlKeDESwmf8ajU7qMjujN2o5bU=";
 
   RUSTC_BOOTSTRAP = 1;
 
diff --git a/nixpkgs/pkgs/tools/misc/getoptions/default.nix b/nixpkgs/pkgs/tools/misc/getoptions/default.nix
index 46a671707259..9860430515e4 100644
--- a/nixpkgs/pkgs/tools/misc/getoptions/default.nix
+++ b/nixpkgs/pkgs/tools/misc/getoptions/default.nix
@@ -18,8 +18,11 @@ stdenvNoCC.mkDerivation rec {
   nativeCheckInputs = [ shellspec ksh mksh yash zsh ]
     ++ lib.lists.optional (!stdenvNoCC.isDarwin) busybox-sandbox-shell;
 
+  # Disable checks against yash, since shellspec seems to be broken for yash>=2.54
+  # (see: https://github.com/NixOS/nixpkgs/pull/218264#pullrequestreview-1434402054)
   preCheck = ''
     sed -i '/shellspec -s posh/d' Makefile
+    sed -i '/shellspec -s yash/d' Makefile
     '' + lib.strings.optionalString stdenvNoCC.isDarwin ''
     sed -i "/shellspec -s 'busybox ash'/d" Makefile
   '';
diff --git a/nixpkgs/pkgs/tools/misc/gh-dash/default.nix b/nixpkgs/pkgs/tools/misc/gh-dash/default.nix
index 6f0d3d77ce5b..1fc865feef82 100644
--- a/nixpkgs/pkgs/tools/misc/gh-dash/default.nix
+++ b/nixpkgs/pkgs/tools/misc/gh-dash/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "gh-dash";
-  version = "3.10.0";
+  version = "3.11.0";
 
   src = fetchFromGitHub {
     owner = "dlvhdr";
     repo = "gh-dash";
     rev = "v${version}";
-    hash = "sha256-ypYM/FXp+BObR2fjVCV8nDJhRuuu2Y7213haAJnzRIE=";
+    hash = "sha256-XvNc68pVwqBLthkr3jb578Avpnr1NKT1XWUD4aazBHw=";
   };
 
-  vendorHash = "sha256-lOIONv+7cUUC0mGCwYkOkDn3zHreYpFeqmTbp2Ob3yM=";
+  vendorHash = "sha256-COPEgRqogRkGuJm56n9Cqljr7H8QT0RSKAdnXbHm+nw=";
 
   ldflags = [
     "-s"
diff --git a/nixpkgs/pkgs/tools/misc/goreleaser/default.nix b/nixpkgs/pkgs/tools/misc/goreleaser/default.nix
index c1b90a26575a..714876c0cc68 100644
--- a/nixpkgs/pkgs/tools/misc/goreleaser/default.nix
+++ b/nixpkgs/pkgs/tools/misc/goreleaser/default.nix
@@ -7,16 +7,16 @@
 }:
 buildGoModule rec {
   pname = "goreleaser";
-  version = "1.19.2";
+  version = "1.20.0";
 
   src = fetchFromGitHub {
     owner = "goreleaser";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-T8mLbEJ0fGm+rxwFVHziQyq+JcXC0OrThwyDPxcPHB0=";
+    sha256 = "iZqX/03+0koxLTbeUOxpQoEita6S/eszB8kMe/NtDcc=";
   };
 
-  vendorHash = "sha256-2m81ELHWbF9WKEMXmr5E8QReClWdVhPRJ+ZstrM6qY0=";
+  vendorHash = "sha256-YYFCoLwgx8OBfI4VcWO6AUqNZU2JdgGAJm26koJAzWA=";
 
   ldflags =
     [ "-s" "-w" "-X main.version=${version}" "-X main.builtBy=nixpkgs" ];
diff --git a/nixpkgs/pkgs/tools/misc/gradescope-submit/default.nix b/nixpkgs/pkgs/tools/misc/gradescope-submit/default.nix
new file mode 100644
index 000000000000..89e7dc89438c
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/gradescope-submit/default.nix
@@ -0,0 +1,35 @@
+{ lib
+, fetchFromGitHub
+, ocamlPackages
+}:
+
+ocamlPackages.buildDunePackage rec {
+  pname = "gradescope_submit";
+  version = "2.0.2";
+
+  src = fetchFromGitHub {
+    owner = "nmittu";
+    repo = "gradescope-submit";
+    rev = version;
+    hash = "sha256-BVNXipgw0wz3PRGYvur8jrXZw/6i0fZ+MOZHzXzlFOk=";
+  };
+
+  buildInputs = with ocamlPackages; [
+    core
+    core_unix
+    cohttp
+    cohttp-lwt-unix
+    lambdasoup
+    toml
+    yojson
+    lwt_ssl
+  ];
+
+  meta = with lib; {
+    description = "A small script to submit to Gradescope via GitHub";
+    homepage = "https://github.com/nmittu/gradescope-submit";
+    license = licenses.mit;
+    maintainers = with maintainers; [ figsoda ];
+    mainProgram = "submit";
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/grex/default.nix b/nixpkgs/pkgs/tools/misc/grex/default.nix
index d7a0fc1a747b..2a6ca6031e3b 100644
--- a/nixpkgs/pkgs/tools/misc/grex/default.nix
+++ b/nixpkgs/pkgs/tools/misc/grex/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "grex";
-  version = "1.4.2";
+  version = "1.4.4";
 
   src = fetchFromGitHub {
     owner = "pemistahl";
-    repo = pname;
+    repo = "grex";
     rev = "v${version}";
-    sha256 = "sha256-kbrBnpoVeXSgmIqElpfAnoSutYwsnFaxFJpRsJPUE8k=";
+    hash = "sha256-ef1eUxeCznIgXLoywwJmnLkTGdW1AmGwCin9DLU9kAs=";
   };
 
-  cargoSha256 = "sha256-WO8h5JUEiCpfsROQoRZj7I6em6REcJ2PfmoGN1zKRPg=";
+  cargoHash = "sha256-XLH+fS3fwRcWmVOzTjUacV010N37Oofs9Tbixdka1qY=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ Security ];
 
@@ -27,7 +27,9 @@ rustPlatform.buildRustPackage rec {
   meta = with lib; {
     description = "A command-line tool for generating regular expressions from user-provided test cases";
     homepage = "https://github.com/pemistahl/grex";
+    changelog = "https://github.com/pemistahl/grex/releases/tag/v${version}";
     license = licenses.asl20;
-    maintainers = with maintainers; [ SuperSandro2000 ];
+    mainProgram = "grex";
+    maintainers = with maintainers; [ SuperSandro2000 mfrw ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/h/default.nix b/nixpkgs/pkgs/tools/misc/h/default.nix
index 8f44ed1b210b..6e4ae6381e75 100644
--- a/nixpkgs/pkgs/tools/misc/h/default.nix
+++ b/nixpkgs/pkgs/tools/misc/h/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "h";
-  version = "1.0.3";
+  version = "1.0.4";
 
   src = fetchFromGitHub {
     owner = "zimbatm";
     repo = "h";
     rev = "v${version}";
-    hash = "sha256-RyQZ9F+rZ0a/90hljSyNCzYK8eA3rYJlJkV7B5NPRzY=";
+    hash = "sha256-eitUKOo2c1c+SyctkUW/SUb2RCKUoU6nJplfJVdwBSs=";
   };
 
   buildInputs = [ ruby ];
diff --git a/nixpkgs/pkgs/tools/misc/hdf5/default.nix b/nixpkgs/pkgs/tools/misc/hdf5/default.nix
index 1dc0eda83f67..3c9c6169192d 100644
--- a/nixpkgs/pkgs/tools/misc/hdf5/default.nix
+++ b/nixpkgs/pkgs/tools/misc/hdf5/default.nix
@@ -26,7 +26,7 @@ assert !cppSupport || !mpiSupport;
 let inherit (lib) optional optionals; in
 
 stdenv.mkDerivation rec {
-  version = "1.14.1-2";
+  version = "1.14.2";
   pname = "hdf5"
     + lib.optionalString cppSupport "-cpp"
     + lib.optionalString fortranSupport "-fortran"
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
         majorMinor = lib.versions.majorMinor version;
         majorMinorPatch = with lib.versions; "${major version}.${minor version}.${patch version}";
       in "https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-${majorMinor}/hdf5-${majorMinorPatch}/src/hdf5-${version}.tar.bz2";
-    sha256 = "sha256-BsoUHRo8MStdfMSCahJzcpOuExAxdIhhaJ9qLsghnb0=";
+    sha256 = "sha256-6jxeJX7zIq9ed/weUurTrWvzu0rAZIDdF+45ANeiTPs=";
   };
 
   passthru = {
@@ -94,18 +94,6 @@ stdenv.mkDerivation rec {
     moveToOutput 'bin/h5pcc' "''${!outputDev}"
   '';
 
-  # Remove reference to /build, which get introduced
-  # into AM_CPPFLAGS since hdf5-1.14.0. Cmake of various
-  # packages using HDF5 gets confused trying access the non-existent path.
-  postFixup = ''
-    for i in h5cc h5pcc h5c++; do
-      if [ -f $dev/bin/$i ]; then
-        substituteInPlace $dev/bin/$i --replace \
-          '-I/build/hdf5-${version}/src/H5FDsubfiling' ""
-      fi
-    done
-  '';
-
   enableParallelBuilding = true;
 
   passthru.tests = {
diff --git a/nixpkgs/pkgs/tools/misc/hoard/default.nix b/nixpkgs/pkgs/tools/misc/hoard/default.nix
index f44787924d94..4bdf7b7127b8 100644
--- a/nixpkgs/pkgs/tools/misc/hoard/default.nix
+++ b/nixpkgs/pkgs/tools/misc/hoard/default.nix
@@ -1,27 +1,39 @@
-{ lib, rustPlatform, fetchFromGitHub, ncurses, openssl, pkg-config, stdenv, Security }:
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, pkg-config
+, openssl
+, stdenv
+, darwin
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "hoard";
-  version = "1.3.1";
+  version = "1.4.2";
 
   src = fetchFromGitHub {
     owner = "Hyde46";
-    repo = pname;
+    repo = "hoard";
     rev = "v${version}";
-    sha256 = "sha256-Gm3X6/g5JQJEl7wRvWcO4j5XpROhtfRJ72LNaUeZRGc=";
+    hash = "sha256-c9iSbxkHwLOeATkO7kzTyLD0VAwZUzCvw5c4FyuR5/E=";
   };
 
-  buildInputs = [ ncurses openssl ]
-    ++ lib.optional stdenv.isDarwin Security;
+  cargoHash = "sha256-4EeeD1ySR4M1i2aaKJP/BNSn+t1l8ingiv2ZImFFn1A=";
 
   nativeBuildInputs = [ pkg-config ];
 
-  cargoHash = "sha256-ZNhUqnsme1rczl3FdFBGGs+vBDFcFEELkPp0/udTfR4=";
+  buildInputs = [
+    openssl
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.Security
+  ];
 
   meta = with lib; {
     description = "CLI command organizer written in rust";
     homepage = "https://github.com/hyde46/hoard";
+    changelog = "https://github.com/Hyde46/hoard/blob/${src.rev}/CHANGES.md";
     license = licenses.mit;
-    maintainers = with maintainers; [ builditluc ];
+    maintainers = with maintainers; [ builditluc figsoda ];
+    mainProgram = "hoard";
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/hyfetch/default.nix b/nixpkgs/pkgs/tools/misc/hyfetch/default.nix
index 037a6e123196..3621ad675b24 100644
--- a/nixpkgs/pkgs/tools/misc/hyfetch/default.nix
+++ b/nixpkgs/pkgs/tools/misc/hyfetch/default.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "hyfetch";
-  version = "1.4.9";
+  version = "1.4.10";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "hykilpikonna";
     repo = "hyfetch";
     rev = "refs/tags/${version}";
-    hash = "sha256-n+Aa6HrGB7aKrHLQijKNcUVGMYxuqYVrAAnHFPDYH40=";
+    hash = "sha256-B8FAMXot+QV7Q2bJuTsRsrxHSr/2f+WNTKrZqFXewdE=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/nixpkgs/pkgs/tools/misc/ksnip/default.nix b/nixpkgs/pkgs/tools/misc/ksnip/default.nix
index 853db8ab45a5..bae675b49599 100644
--- a/nixpkgs/pkgs/tools/misc/ksnip/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ksnip/default.nix
@@ -7,7 +7,7 @@
 , kimageannotator
 , wrapQtAppsHook
 , qtsvg
-, qttranslations
+, qttools
 , qtx11extras
 }:
 
@@ -26,13 +26,13 @@ stdenv.mkDerivation rec {
     cmake
     extra-cmake-modules
     wrapQtAppsHook
+    qttools
   ];
 
   buildInputs = [
     kcolorpicker
     kimageannotator
     qtsvg
-    qttranslations
     qtx11extras
   ];
 
diff --git a/nixpkgs/pkgs/tools/misc/lighthouse-steamvr/Cargo.lock b/nixpkgs/pkgs/tools/misc/lighthouse-steamvr/Cargo.lock
index 0ac80e453262..daaa1802698f 100644
--- a/nixpkgs/pkgs/tools/misc/lighthouse-steamvr/Cargo.lock
+++ b/nixpkgs/pkgs/tools/misc/lighthouse-steamvr/Cargo.lock
@@ -3,31 +3,77 @@
 version = 3
 
 [[package]]
-name = "anyhow"
-version = "1.0.66"
+name = "addr2line"
+version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "216261ddc8289130e551ddcd5ce8a064710c0d064a4d2895c67151c92b5443f6"
+checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
+dependencies = [
+ "gimli",
+]
 
 [[package]]
-name = "async-trait"
-version = "0.1.58"
+name = "adler"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e805d94e6b5001b651426cf4cd446b1ab5f319d27bab5c644f61de0a804360c"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+[[package]]
+name = "anstream"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b1f58811cfac344940f1a400b6e6231ce35171f614f26439e80f8c1465c5cc0c"
 dependencies = [
- "proc-macro2",
- "quote",
- "syn",
+ "anstyle",
+ "anstyle-parse",
+ "anstyle-query",
+ "anstyle-wincon",
+ "colorchoice",
+ "utf8parse",
 ]
 
 [[package]]
-name = "atty"
-version = "0.2.14"
+name = "anstyle"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea"
+
+[[package]]
+name = "anstyle-parse"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
+checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333"
 dependencies = [
- "hermit-abi 0.1.19",
- "libc",
- "winapi",
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle-query"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b"
+dependencies = [
+ "windows-sys",
+]
+
+[[package]]
+name = "anstyle-wincon"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "58f54d10c6dfa51283a066ceab3ec1ab78d13fae00aa49243a45e4571fb79dfd"
+dependencies = [
+ "anstyle",
+ "windows-sys",
+]
+
+[[package]]
+name = "async-trait"
+version = "0.1.73"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
 ]
 
 [[package]]
@@ -37,12 +83,33 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
+name = "backtrace"
+version = "0.3.69"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
+dependencies = [
+ "addr2line",
+ "cc",
+ "cfg-if",
+ "libc",
+ "miniz_oxide",
+ "object",
+ "rustc-demangle",
+]
+
+[[package]]
 name = "bitflags"
 version = "1.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
+name = "bitflags"
+version = "2.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635"
+
+[[package]]
 name = "block"
 version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -50,12 +117,12 @@ checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
 
 [[package]]
 name = "bluez-async"
-version = "0.6.0"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e81db626818b179ab5fc3393b7ac77462335f716b302ef1ff1866473ab6ddb25"
+checksum = "5ce7d4413c940e8e3cb6afc122d3f4a07096aca259d286781128683fc9f39d9b"
 dependencies = [
  "async-trait",
- "bitflags",
+ "bitflags 2.4.0",
  "bluez-generated",
  "dbus",
  "dbus-tokio",
@@ -71,21 +138,21 @@ dependencies = [
 
 [[package]]
 name = "bluez-generated"
-version = "0.2.1"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33ad8f302dd79411881cd0181f3bd9fc91a959b71c3a13159bd8a07d2c40dc7f"
+checksum = "4d1c659dbc82f0b8ca75606c91a371e763589b7f6acf36858eeed0c705afe367"
 dependencies = [
  "dbus",
 ]
 
 [[package]]
 name = "btleplug"
-version = "0.10.3"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ade1454166eca7ef6ac97f447e462a32615942c703683b6cdf690227e6170078"
+checksum = "a1ad24f1a9171b691da81fd0a0ae6859ef471979a4d68372515bafc2f4586df1"
 dependencies = [
  "async-trait",
- "bitflags",
+ "bitflags 1.3.2",
  "bluez-async",
  "cocoa",
  "dashmap",
@@ -109,15 +176,18 @@ dependencies = [
 
 [[package]]
 name = "bytes"
-version = "1.3.0"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dfb24e866b15a1af2a1b663f10c6b6b8f397a84aadb828f12e5b289ec23a3a3c"
+checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be"
 
 [[package]]
 name = "cc"
-version = "1.0.77"
+version = "1.0.83"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9f73505338f7d905b19d18738976aae232eb46b8efc15554ffc56deb5d9ebe4"
+checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
+dependencies = [
+ "libc",
+]
 
 [[package]]
 name = "cesu8"
@@ -133,37 +203,43 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "clap"
-version = "4.0.27"
+version = "4.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0acbd8d28a0a60d7108d7ae850af6ba34cf2d1257fc646980e5f97ce14275966"
+checksum = "7c8d502cbaec4595d2e7d5f61e318f05417bd2b66fdc3809498f0d3fdf0bea27"
 dependencies = [
- "bitflags",
+ "clap_builder",
  "clap_derive",
- "clap_lex",
- "is-terminal",
  "once_cell",
- "strsim",
- "termcolor",
 ]
 
 [[package]]
 name = "clap-verbosity-flag"
-version = "2.0.0"
-source = "git+https://github.com/ShayBoxs-Forks/clap-verbosity-flag.git#9567257d3fc7f394d6edc95111027d38f5722de4"
+version = "2.1.1"
+source = "git+https://github.com/ShayBoxs-Forks/clap-verbosity-flag.git#5807fd33f935a71ade25e2e6d5aa1b8727c8e63f"
 dependencies = [
  "clap",
- "log",
  "tracing",
 ]
 
 [[package]]
+name = "clap_builder"
+version = "4.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5891c7bc0edb3e1c2204fc5e94009affabeb1821c9e5fdc3959536c5c0bb984d"
+dependencies = [
+ "anstream",
+ "anstyle",
+ "clap_lex",
+ "strsim",
+]
+
+[[package]]
 name = "clap_derive"
-version = "4.0.21"
+version = "4.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0177313f9f02afc995627906bbd8967e2be069f5261954222dac78290c2b9014"
+checksum = "c9fd1a5729c4548118d7d70ff234a44868d00489a4b6597b0b020918a0e91a1a"
 dependencies = [
  "heck",
- "proc-macro-error",
  "proc-macro2",
  "quote",
  "syn",
@@ -171,45 +247,48 @@ dependencies = [
 
 [[package]]
 name = "clap_lex"
-version = "0.3.0"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d4198f73e42b4936b35b5bb248d81d2b595ecb170da0bac7655c54eedfa8da8"
-dependencies = [
- "os_str_bytes",
-]
+checksum = "cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961"
 
 [[package]]
 name = "cocoa"
-version = "0.24.1"
+version = "0.25.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a"
+checksum = "f6140449f97a6e97f9511815c5632d84c8aacf8ac271ad77c559218161a1373c"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "block",
  "cocoa-foundation",
  "core-foundation",
  "core-graphics",
- "foreign-types",
+ "foreign-types 0.5.0",
  "libc",
  "objc",
 ]
 
 [[package]]
 name = "cocoa-foundation"
-version = "0.1.0"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ade49b65d560ca58c403a479bb396592b155c0185eada742ee323d1d68d6318"
+checksum = "931d3837c286f56e3c58423ce4eba12d08db2374461a785c86f672b08b5650d6"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "block",
  "core-foundation",
  "core-graphics-types",
- "foreign-types",
+ "foreign-types 0.3.2",
  "libc",
  "objc",
 ]
 
 [[package]]
+name = "colorchoice"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
+
+[[package]]
 name = "combine"
 version = "4.6.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -231,40 +310,39 @@ dependencies = [
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.8.3"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
+checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
 
 [[package]]
 name = "core-graphics"
-version = "0.22.3"
+version = "0.23.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb"
+checksum = "970a29baf4110c26fedbc7f82107d42c23f7e88e404c4577ed73fe99ff85a212"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation",
  "core-graphics-types",
- "foreign-types",
+ "foreign-types 0.5.0",
  "libc",
 ]
 
 [[package]]
 name = "core-graphics-types"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b"
+checksum = "2bb142d41022986c1d8ff29103a1411c8a3dfad3552f87a4f8dc50d61d4f4e33"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation",
- "foreign-types",
  "libc",
 ]
 
 [[package]]
 name = "dashmap"
-version = "5.4.0"
+version = "5.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "907076dfda823b0b36d2a1bb5f90c96660a5bbcd7729e10727f07858f22c4edc"
+checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
 dependencies = [
  "cfg-if",
  "hashbrown",
@@ -275,9 +353,9 @@ dependencies = [
 
 [[package]]
 name = "dbus"
-version = "0.9.6"
+version = "0.9.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f8bcdd56d2e5c4ed26a529c5a9029f5db8290d433497506f958eae3be148eb6"
+checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b"
 dependencies = [
  "futures-channel",
  "futures-util",
@@ -288,9 +366,9 @@ dependencies = [
 
 [[package]]
 name = "dbus-tokio"
-version = "0.7.5"
+version = "0.7.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12a1a74a0c53b22d7d994256cf3ecbeefa5eedce3cf9d362945ac523c4132180"
+checksum = "007688d459bc677131c063a3a77fb899526e17b7980f390b69644bdbc41fad13"
 dependencies = [
  "dbus",
  "libc",
@@ -299,62 +377,57 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.8.0"
+version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797"
+checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
 
 [[package]]
-name = "errno"
-version = "0.2.8"
+name = "foreign-types"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1"
+checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
 dependencies = [
- "errno-dragonfly",
- "libc",
- "winapi",
+ "foreign-types-shared 0.1.1",
 ]
 
 [[package]]
-name = "errno-dragonfly"
-version = "0.1.2"
+name = "foreign-types"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
+checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
 dependencies = [
- "cc",
- "libc",
+ "foreign-types-macros",
+ "foreign-types-shared 0.3.1",
 ]
 
 [[package]]
-name = "error-stack"
-version = "0.2.4"
+name = "foreign-types-macros"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "859d224e04b2d93d974c08e375dac9b8d1a513846e44c6666450a57b1ed963f9"
+checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
 dependencies = [
- "anyhow",
- "owo-colors",
- "rustc_version",
+ "proc-macro2",
+ "quote",
+ "syn",
 ]
 
 [[package]]
-name = "foreign-types"
-version = "0.3.2"
+name = "foreign-types-shared"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
-dependencies = [
- "foreign-types-shared",
-]
+checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
 
 [[package]]
 name = "foreign-types-shared"
-version = "0.1.1"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
 
 [[package]]
 name = "futures"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38390104763dc37a5145a53c29c63c1290b5d316d6086ec32c293f6736051bb0"
+checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -367,9 +440,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed"
+checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -377,15 +450,15 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac"
+checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7acc85df6714c176ab5edf386123fafe217be88c0840ec11f199441134a074e2"
+checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -394,15 +467,15 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00f5fb52a06bdcadeb54e8d3671f8888a39697dcb0b81b23b55174030427f4eb"
+checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
 
 [[package]]
 name = "futures-macro"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdfb8ce053d86b91919aad980c220b1fb8401a9394410e1c289ed7e66b61835d"
+checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -411,21 +484,21 @@ dependencies = [
 
 [[package]]
 name = "futures-sink"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9"
+checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
 
 [[package]]
 name = "futures-task"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea"
+checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
 
 [[package]]
 name = "futures-util"
-version = "0.3.25"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6"
+checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -440,62 +513,28 @@ dependencies = [
 ]
 
 [[package]]
-name = "hashbrown"
-version = "0.12.3"
+name = "gimli"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0"
 
 [[package]]
-name = "heck"
-version = "0.4.0"
+name = "hashbrown"
+version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
+checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a"
 
 [[package]]
-name = "hermit-abi"
-version = "0.1.19"
+name = "heck"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
-dependencies = [
- "libc",
-]
+checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
 name = "hermit-abi"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "io-lifetimes"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e394faa0efb47f9f227f1cd89978f854542b318a6f64fa695489c9c993056656"
-dependencies = [
- "libc",
- "windows-sys",
-]
-
-[[package]]
-name = "is-terminal"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aae5bc6e2eb41c9def29a3e0f1306382807764b9b53112030eff57435667352d"
-dependencies = [
- "hermit-abi 0.2.6",
- "io-lifetimes",
- "rustix",
- "windows-sys",
-]
-
-[[package]]
-name = "is_ci"
-version = "1.1.1"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "616cde7c720bb2bb5824a224687d8f77bfd38922027f01d825cd7453be5099fb"
+checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b"
 
 [[package]]
 name = "itertools"
@@ -528,9 +567,9 @@ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
 
 [[package]]
 name = "jni-utils"
-version = "0.1.0"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d3a00638470bedd9bcbea85292bef2207e6db984079db0bd70148a449cdb457"
+checksum = "259e9f2c3ead61de911f147000660511f07ab00adeed1d84f5ac4d0386e7a6c4"
 dependencies = [
  "dashmap",
  "futures",
@@ -549,45 +588,39 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
 name = "libc"
-version = "0.2.137"
+version = "0.2.147"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc7fcc620a3bff7cdd7a365be3376c97191aeaccc2a603e600951e452615bf89"
+checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
 
 [[package]]
 name = "libdbus-sys"
-version = "0.2.2"
+version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c185b5b7ad900923ef3a8ff594083d4d9b5aea80bb4f32b8342363138c0d456b"
+checksum = "06085512b750d640299b79be4bad3d2fa90a9c00b1fd9e1b46364f66f0485c72"
 dependencies = [
  "pkg-config",
 ]
 
 [[package]]
 name = "lighthouse"
-version = "1.0.0"
+version = "1.1.1"
 dependencies = [
  "btleplug",
  "clap",
  "clap-verbosity-flag",
- "error-stack",
- "log",
  "serde",
+ "thiserror",
  "tokio",
+ "tracing",
  "tracing-subscriber",
  "uuid",
 ]
 
 [[package]]
-name = "linux-raw-sys"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f9f08d8963a6c613f4b1a78f4f4a4dbfadf8e6545b2d72861731e4858b8b47f"
-
-[[package]]
 name = "lock_api"
-version = "0.4.9"
+version = "0.4.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df"
+checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -595,12 +628,9 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.17"
+version = "0.4.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
-dependencies = [
- "cfg-if",
-]
+checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
 
 [[package]]
 name = "malloc_buf"
@@ -613,18 +643,26 @@ dependencies = [
 
 [[package]]
 name = "memchr"
-version = "2.5.0"
+version = "2.6.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5486aed0026218e61b8a01d5fbd5a0a134649abb71a0e53b7bc088529dced86e"
+
+[[package]]
+name = "miniz_oxide"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+dependencies = [
+ "adler",
+]
 
 [[package]]
 name = "mio"
-version = "0.8.5"
+version = "0.8.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5d732bc30207a6423068df043e3d02e0735b155ad7ce1a6f76fe2baa5b158de"
+checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2"
 dependencies = [
  "libc",
- "log",
  "wasi",
  "windows-sys",
 ]
@@ -641,11 +679,11 @@ dependencies = [
 
 [[package]]
 name = "num_cpus"
-version = "1.14.0"
+version = "1.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6058e64324c71e02bc2b150e4f3bc8286db6c83092132ffa3f6b1eab0f9def5"
+checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
 dependencies = [
- "hermit-abi 0.1.19",
+ "hermit-abi",
  "libc",
 ]
 
@@ -659,16 +697,19 @@ dependencies = [
 ]
 
 [[package]]
-name = "once_cell"
-version = "1.16.0"
+name = "object"
+version = "0.32.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860"
+checksum = "77ac5bbd07aea88c60a577a1ce218075ffd59208b2d7ca97adf9bfc5aeb21ebe"
+dependencies = [
+ "memchr",
+]
 
 [[package]]
-name = "os_str_bytes"
-version = "6.4.1"
+name = "once_cell"
+version = "1.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee"
+checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
 
 [[package]]
 name = "overload"
@@ -677,15 +718,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
 
 [[package]]
-name = "owo-colors"
-version = "3.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f"
-dependencies = [
- "supports-color",
-]
-
-[[package]]
 name = "parking_lot"
 version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -697,22 +729,22 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.4"
+version = "0.9.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dc9e0dc2adc1c69d09143aff38d3d30c5c3f0df0dad82e6d25547af174ebec0"
+checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447"
 dependencies = [
  "cfg-if",
  "libc",
  "redox_syscall",
  "smallvec",
- "windows-sys",
+ "windows-targets",
 ]
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.9"
+version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
+checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
 
 [[package]]
 name = "pin-utils"
@@ -722,83 +754,42 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
 name = "pkg-config"
-version = "0.3.26"
+version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
-
-[[package]]
-name = "proc-macro-error"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
-dependencies = [
- "proc-macro-error-attr",
- "proc-macro2",
- "quote",
- "syn",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
-dependencies = [
- "proc-macro2",
- "quote",
- "version_check",
-]
+checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.47"
+version = "1.0.66"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725"
+checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.21"
+version = "1.0.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"
+checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
 dependencies = [
  "proc-macro2",
 ]
 
 [[package]]
 name = "redox_syscall"
-version = "0.2.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
-dependencies = [
- "bitflags",
-]
-
-[[package]]
-name = "rustc_version"
-version = "0.4.0"
+version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
+checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
 dependencies = [
- "semver",
+ "bitflags 1.3.2",
 ]
 
 [[package]]
-name = "rustix"
-version = "0.36.3"
+name = "rustc-demangle"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b1fbb4dfc4eb1d390c02df47760bb19a84bb80b301ecc947ab5406394d8223e"
-dependencies = [
- "bitflags",
- "errno",
- "io-lifetimes",
- "libc",
- "linux-raw-sys",
- "windows-sys",
-]
+checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
 
 [[package]]
 name = "same-file"
@@ -811,30 +802,24 @@ dependencies = [
 
 [[package]]
 name = "scopeguard"
-version = "1.1.0"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
-
-[[package]]
-name = "semver"
-version = "1.0.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e25dfac463d778e353db5be2449d1cce89bd6fd23c9f1ea21310ce6e5a1b29c4"
+checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
 
 [[package]]
 name = "serde"
-version = "1.0.147"
+version = "1.0.188"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d193d69bae983fc11a79df82342761dfbf28a99fc8d203dca4c3c1b590948965"
+checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde-xml-rs"
-version = "0.5.1"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65162e9059be2f6a3421ebbb4fef3e74b7d9e7c60c50a0e292c6239f19f1edfa"
+checksum = "fb3aa78ecda1ebc9ec9847d5d3aba7d618823446a049ba2491940506da6e2782"
 dependencies = [
  "log",
  "serde",
@@ -844,18 +829,18 @@ dependencies = [
 
 [[package]]
 name = "serde_bytes"
-version = "0.11.7"
+version = "0.11.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cfc50e8183eeeb6178dcb167ae34a8051d63535023ae38b5d8d12beae193d37b"
+checksum = "ab33ec92f677585af6d88c65593ae2375adde54efdbf16d597f2cbc7a6d368ff"
 dependencies = [
  "serde",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.147"
+version = "1.0.188"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f1d362ca8fc9c3e3a7484440752472d68a6caa98f1ab81d99b5dfe517cec852"
+checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -873,36 +858,36 @@ dependencies = [
 
 [[package]]
 name = "signal-hook-registry"
-version = "1.4.0"
+version = "1.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0"
+checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
 dependencies = [
  "libc",
 ]
 
 [[package]]
 name = "slab"
-version = "0.4.7"
+version = "0.4.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef"
+checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
 dependencies = [
  "autocfg",
 ]
 
 [[package]]
 name = "smallvec"
-version = "1.10.0"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
+checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9"
 
 [[package]]
 name = "socket2"
-version = "0.4.7"
+version = "0.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"
+checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877"
 dependencies = [
  "libc",
- "winapi",
+ "windows-sys",
 ]
 
 [[package]]
@@ -918,20 +903,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
-name = "supports-color"
-version = "1.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ba6faf2ca7ee42fdd458f4347ae0a9bd6bcc445ad7cb57ad82b383f18870d6f"
-dependencies = [
- "atty",
- "is_ci",
-]
-
-[[package]]
 name = "syn"
-version = "1.0.103"
+version = "2.0.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a864042229133ada95abf3b54fdc62ef5ccabe9515b64717bcb9a1919e59445d"
+checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -939,28 +914,19 @@ dependencies = [
 ]
 
 [[package]]
-name = "termcolor"
-version = "1.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
 name = "thiserror"
-version = "1.0.37"
+version = "1.0.47"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10deb33631e3c9018b9baf9dcbbc4f737320d2b576bac10f6aefa048fa407e3e"
+checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.37"
+version = "1.0.47"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "982d17546b47146b28f7c22e3d08465f6b8903d0ea13c1660d9d84a6e7adcdbb"
+checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -969,23 +935,23 @@ dependencies = [
 
 [[package]]
 name = "thread_local"
-version = "1.1.4"
+version = "1.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180"
+checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
 dependencies = [
+ "cfg-if",
  "once_cell",
 ]
 
 [[package]]
 name = "tokio"
-version = "1.22.0"
+version = "1.32.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d76ce4a75fb488c605c54bf610f221cea8b0dafb53333c1a67e8ee199dcd2ae3"
+checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9"
 dependencies = [
- "autocfg",
+ "backtrace",
  "bytes",
  "libc",
- "memchr",
  "mio",
  "num_cpus",
  "parking_lot",
@@ -993,14 +959,14 @@ dependencies = [
  "signal-hook-registry",
  "socket2",
  "tokio-macros",
- "winapi",
+ "windows-sys",
 ]
 
 [[package]]
 name = "tokio-macros"
-version = "1.8.0"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9724f9a975fb987ef7a3cd9be0350edcbe130698af5b8f7a631e23d42d052484"
+checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1009,9 +975,9 @@ dependencies = [
 
 [[package]]
 name = "tokio-stream"
-version = "0.1.11"
+version = "0.1.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d660770404473ccd7bc9f8b28494a811bc18542b915c0855c51e8f419d5223ce"
+checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842"
 dependencies = [
  "futures-core",
  "pin-project-lite",
@@ -1021,9 +987,9 @@ dependencies = [
 
 [[package]]
 name = "tokio-util"
-version = "0.7.4"
+version = "0.7.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bb2e075f03b3d66d8d8785356224ba688d2906a371015e225beeb65ca92c740"
+checksum = "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d"
 dependencies = [
  "bytes",
  "futures-core",
@@ -1046,9 +1012,9 @@ dependencies = [
 
 [[package]]
 name = "tracing-attributes"
-version = "0.1.23"
+version = "0.1.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a"
+checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1057,9 +1023,9 @@ dependencies = [
 
 [[package]]
 name = "tracing-core"
-version = "0.1.30"
+version = "0.1.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a"
+checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a"
 dependencies = [
  "once_cell",
  "valuable",
@@ -1078,9 +1044,9 @@ dependencies = [
 
 [[package]]
 name = "tracing-subscriber"
-version = "0.3.16"
+version = "0.3.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a6176eae26dd70d0c919749377897b54a9276bd7061339665dd68777926b5a70"
+checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77"
 dependencies = [
  "nu-ansi-term",
  "sharded-slab",
@@ -1092,15 +1058,21 @@ dependencies = [
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.5"
+version = "1.0.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c"
+
+[[package]]
+name = "utf8parse"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ceab39d59e4c9499d4e5a8ee0e2735b891bb7308ac83dfb4e80cad195c9f6f3"
+checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
 
 [[package]]
 name = "uuid"
-version = "1.2.2"
+version = "1.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "422ee0de9031b5b948b97a8fc04e3aa35230001a722ddd27943e0be31564ce4c"
+checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d"
 dependencies = [
  "serde",
 ]
@@ -1112,19 +1084,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
 
 [[package]]
-name = "version_check"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
-
-[[package]]
 name = "walkdir"
-version = "2.3.2"
+version = "2.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
+checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698"
 dependencies = [
  "same-file",
- "winapi",
  "winapi-util",
 ]
 
@@ -1167,120 +1132,81 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
 name = "windows"
-version = "0.41.0"
+version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a3ed69de2c1f8d0524a8a3417a80a85dd316a071745fbfdf5eb028b310058ab"
+checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
 dependencies = [
- "windows_aarch64_gnullvm 0.41.0",
- "windows_aarch64_msvc 0.41.0",
- "windows_i686_gnu 0.41.0",
- "windows_i686_msvc 0.41.0",
- "windows_x86_64_gnu 0.41.0",
- "windows_x86_64_gnullvm 0.41.0",
- "windows_x86_64_msvc 0.41.0",
+ "windows-targets",
 ]
 
 [[package]]
 name = "windows-sys"
-version = "0.42.0"
+version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
+checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
 dependencies = [
- "windows_aarch64_gnullvm 0.42.0",
- "windows_aarch64_msvc 0.42.0",
- "windows_i686_gnu 0.42.0",
- "windows_i686_msvc 0.42.0",
- "windows_x86_64_gnu 0.42.0",
- "windows_x86_64_gnullvm 0.42.0",
- "windows_x86_64_msvc 0.42.0",
+ "windows-targets",
 ]
 
 [[package]]
-name = "windows_aarch64_gnullvm"
-version = "0.41.0"
+name = "windows-targets"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "163d2761774f2278ecb4e6719e80b2b5e92e5a2be73a7bcd3ef624dd5e3091fd"
+checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
+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.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.41.0"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef005ff2bceb00d3b84166a359cc19084f9459754fd3fe5a504dee3dddcd0a0c"
+checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.42.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.41.0"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02b4df2d51e32f03f8b4b228e487828c03bcb36d97b216fc5463bcea5bb1440b"
+checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.42.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.41.0"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "568a966834571f2f3267f07dd72b4d8507381f25e53d056808483b2637385ef7"
+checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.42.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.41.0"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc395dac1adf444e276d096d933ae7961361c8cda3245cffef7a9b3a70a8f994"
+checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.42.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed"
-
-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.41.0"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90e8ec22b715d5b436e1d59c8adad6c744dc20cd984710121d5836b4e8dbb5e0"
+checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.42.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.41.0"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b9761f0216b669019df1512f6e25e5ee779bf61c5cdc43c7293858e7efd7926"
+checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.42.0"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5"
+checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "xml-rs"
-version = "0.8.4"
+version = "0.8.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3"
\ No newline at end of file
+checksum = "47430998a7b5d499ccee752b41567bc3afc57e1327dc855b1a2aa44ce29b5fa1"
diff --git a/nixpkgs/pkgs/tools/misc/lighthouse-steamvr/default.nix b/nixpkgs/pkgs/tools/misc/lighthouse-steamvr/default.nix
index 1fa29273a831..5328c14cdbfe 100644
--- a/nixpkgs/pkgs/tools/misc/lighthouse-steamvr/default.nix
+++ b/nixpkgs/pkgs/tools/misc/lighthouse-steamvr/default.nix
@@ -2,19 +2,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "Lighthouse";
-  version = "1.0.0";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "ShayBox";
     repo = pname;
     rev = version;
-    sha256 = "0628v6fq9dcv1w4spgnypgyxf1qw5x03yhasink5s9nqpcip0w4h";
+    sha256 = "0g0cs54j1vmcig5nc8sqgx30nfn2zjs40pvv30j5g9cyyszbzwkw";
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "clap-verbosity-flag-2.0.0" = "125b8ki3dqj2kilimmvpi9wslwky8xacydi75c2bdrxpi926nya6";
+      "clap-verbosity-flag-2.1.1" = "1213bsb0bpvv6621j9zicjsqy05sv21gh6inrvszqwcmj6fxxc7j";
     };
   };
 
diff --git a/nixpkgs/pkgs/tools/misc/lsd/default.nix b/nixpkgs/pkgs/tools/misc/lsd/default.nix
index 89f51c0ea5c6..83d7580a7eed 100644
--- a/nixpkgs/pkgs/tools/misc/lsd/default.nix
+++ b/nixpkgs/pkgs/tools/misc/lsd/default.nix
@@ -1,7 +1,9 @@
 { lib
+, stdenv
 , fetchFromGitHub
 , rustPlatform
 , installShellFiles
+, darwin
 , pandoc
 , testers
 , lsd
@@ -9,23 +11,29 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "lsd";
-  version = "0.23.1";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
-    owner = "Peltoche";
-    repo = pname;
-    rev = version;
-    sha256 = "sha256-FY1odcKBl7zJ+MxfohkmC1e45fPQK3MKB3orQdCRpA4=";
+    owner = "lsd-rs";
+    repo = "lsd";
+    rev = "v${version}";
+    hash = "sha256-syT+1LNdigUWkfJ/wkbY/kny2uW6qfpl7KmW1FjZKR8=";
   };
 
-  cargoSha256 = "sha256-t7J7hIbLlRq99Yd2/3Zn+PbHhJtaJRdDluDXN0Hp/Jc=";
+  cargoHash = "sha256-viLr76Bq9OkPMp+BoprQusMDgx59nbevVi4uxjZ+eZg=";
 
   nativeBuildInputs = [ installShellFiles pandoc ];
+
+  buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
+
   postInstall = ''
     pandoc --standalone --to man doc/lsd.md -o lsd.1
     installManPage lsd.1
 
-    installShellCompletion $releaseDir/build/lsd-*/out/{_lsd,lsd.{bash,fish}}
+    installShellCompletion --cmd lsd \
+      --bash $releaseDir/build/lsd-*/out/lsd.bash \
+      --fish $releaseDir/build/lsd-*/out/lsd.fish \
+      --zsh $releaseDir/build/lsd-*/out/_lsd
   '';
 
   # Found argument '--test-threads' which wasn't expected, or isn't valid in this context
@@ -36,9 +44,9 @@ rustPlatform.buildRustPackage rec {
   };
 
   meta = with lib; {
-    homepage = "https://github.com/Peltoche/lsd";
+    homepage = "https://github.com/lsd-rs/lsd";
     description = "The next gen ls command";
     license = licenses.asl20;
-    maintainers = with maintainers; [ Br1ght0ne marsam zowoq SuperSandro2000 ];
+    maintainers = with maintainers; [ marsam zowoq SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/moar/default.nix b/nixpkgs/pkgs/tools/misc/moar/default.nix
index cc25dde87587..7c163859dfdb 100644
--- a/nixpkgs/pkgs/tools/misc/moar/default.nix
+++ b/nixpkgs/pkgs/tools/misc/moar/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "moar";
-  version = "1.15.3";
+  version = "1.16.0";
 
   src = fetchFromGitHub {
     owner = "walles";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-ppaBO+qgjHPCQysTiB3nCXa8zUuEyLOK5iR2VwSyXRM=";
+    hash = "sha256-m3IG5xZITh+iAE233NFMI+25VRt6GvK694oVd1wU5jA=";
   };
 
   vendorHash = "sha256-aFCv6VxHD1bOLhCHXhy4ubik8Z9uvU6AeqcMqIZI2Oo=";
diff --git a/nixpkgs/pkgs/tools/misc/ncdu/1.nix b/nixpkgs/pkgs/tools/misc/ncdu/1.nix
index 742ef587138a..09289ea745da 100644
--- a/nixpkgs/pkgs/tools/misc/ncdu/1.nix
+++ b/nixpkgs/pkgs/tools/misc/ncdu/1.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ncdu";
-  version = "1.17";
+  version = "1.18.1";
 
   src = fetchurl {
     url = "https://dev.yorhel.nl/download/${pname}-${version}.tar.gz";
-    sha256 = "sha256-gQdFqO0as3iMh9OupMwaFO327iJvdkvMOD4CS6Vq2/E=";
+    sha256 = "sha256-fA+h6ynYWq7UuhdBZL27jwEbXDkNAXxX1mj8cjEzJAU=";
   };
 
   buildInputs = [ ncurses ];
@@ -17,5 +17,6 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = with maintainers; [ pSub ];
+    mainProgram = "ncdu";
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/node-glob/default.nix b/nixpkgs/pkgs/tools/misc/node-glob/default.nix
new file mode 100644
index 000000000000..aba4690bbba4
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/node-glob/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildNpmPackage
+, fetchFromGitHub
+}:
+
+buildNpmPackage rec {
+  pname = "glob";
+  version = "10.3.3";
+
+  src = fetchFromGitHub {
+    owner = "isaacs";
+    repo = "node-glob";
+    rev = "v${version}";
+    hash = "sha256-oLlNhQOnu/hlKjNWa5vjqslz1EarZJOpUEXUB+vGQvc=";
+  };
+
+  npmDepsHash = "sha256-78oODw+CBCk5JRJbDqLqVmzTVImP7Z7o6jRIimDxZDQ=";
+
+  dontNpmBuild = true;
+
+  meta = {
+    changelog = "https://github.com/isaacs/node-glob/blob/${src.rev}/changelog.md";
+    description = "A little globber for Node.js";
+    homepage = "https://github.com/isaacs/node-glob";
+    license = lib.licenses.isc;
+    mainProgram = "glob";
+    maintainers = with lib.maintainers; [ ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/nomino/default.nix b/nixpkgs/pkgs/tools/misc/nomino/default.nix
index ce9be1fd5878..1eb472ee8fa1 100644
--- a/nixpkgs/pkgs/tools/misc/nomino/default.nix
+++ b/nixpkgs/pkgs/tools/misc/nomino/default.nix
@@ -1,21 +1,22 @@
-{ fetchFromGitHub, lib, rustPlatform }:
+{ lib, rustPlatform, fetchFromGitHub }:
 
 rustPlatform.buildRustPackage rec {
   pname = "nomino";
-  version = "1.3.1";
+  version = "1.3.2";
 
   src = fetchFromGitHub {
     owner = "yaa110";
     repo = pname;
     rev = version;
-    sha256 = "sha256-XUxoHmZePn/VVlu2KctC+TbmCwp+tYEYg5EYXI8ZB7o=";
+    hash = "sha256-pzAL7e72sO94qLEwsH/5RuiuzvnsSelIq47jdU8INDw=";
   };
 
-  cargoSha256 = "sha256-RyEqDC2gRacd27uvNf3XOATZdeVg70vBEdPURNuf38w=";
+  cargoHash = "sha256-gDOZ3nD7pTIRNXG3S+qTkl+HInBcAErvwPqa0NZWxY4=";
 
   meta = with lib; {
     description = "Batch rename utility for developers";
     homepage = "https://github.com/yaa110/nomino";
+    changelog = "https://github.com/yaa110/nomino/releases/tag/${src.rev}";
     license = with licenses; [ mit /* or */ asl20 ];
     maintainers = with maintainers; [ figsoda ];
   };
diff --git a/nixpkgs/pkgs/tools/misc/ollama/default.nix b/nixpkgs/pkgs/tools/misc/ollama/default.nix
index 8de315533746..be1864024888 100644
--- a/nixpkgs/pkgs/tools/misc/ollama/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ollama/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "ollama";
-  version = "0.0.15";
+  version = "0.0.17";
 
   src = fetchFromGitHub {
     owner = "jmorganca";
     repo = "ollama";
     rev = "v${version}";
-    hash = "sha256-p2YLgLyjmf2MPvFue45+wW7kqKpUli9rX3aWNH08cDk=";
+    hash = "sha256-idsFcjsRD1zPmG742gnYQJcgSWDA2DLMHksCFNe2GiY=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk_11_0.frameworks; [
diff --git a/nixpkgs/pkgs/tools/misc/pgbadger/default.nix b/nixpkgs/pkgs/tools/misc/pgbadger/default.nix
index b0c4c1ad6551..ed1646c04f82 100644
--- a/nixpkgs/pkgs/tools/misc/pgbadger/default.nix
+++ b/nixpkgs/pkgs/tools/misc/pgbadger/default.nix
@@ -1,13 +1,13 @@
 { buildPerlPackage, stdenv, lib, fetchFromGitHub, which, bzip2, PodMarkdown, JSONXS
-, TextCSV }:
+, TextCSV_XS }:
 buildPerlPackage rec {
   pname = "pgbadger";
-  version = "11.5";
+  version = "12.2";
   src = fetchFromGitHub {
     owner = "darold";
     repo = "pgbadger";
-    rev = "98b38161ba99faae77c81d5fa47bd769c1dd750b";
-    sha256 = "0r01mx1922g1m56x4958cihk491zjlaijvap0i32grjmnv4s5v88";
+    rev = "v${version}";
+    hash = "sha256-IzfpDqzS5VcehkPsFxyn3kJsvXs8nLgJ3WT8ZCmIDxI=";
   };
 
   postPatch = ''
@@ -18,13 +18,14 @@ buildPerlPackage rec {
 
   PERL_MM_OPT = "INSTALL_BASE=${placeholder "out"}";
 
-  buildInputs = [ PodMarkdown JSONXS TextCSV ];
+  buildInputs = [ PodMarkdown JSONXS TextCSV_XS ];
 
   nativeCheckInputs = [ which bzip2 ];
 
   meta = {
     homepage = "https://github.com/darold/pgbadger";
     description = "A fast PostgreSQL Log Analyzer";
+    changelog = "https://github.com/darold/pgbadger/raw/v${version}/ChangeLog";
     license = lib.licenses.postgresql;
     maintainers = lib.teams.determinatesystems.members;
     broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/pgbadger.x86_64-darwin
diff --git a/nixpkgs/pkgs/tools/misc/pgmetrics/default.nix b/nixpkgs/pkgs/tools/misc/pgmetrics/default.nix
index e6d4b3bed213..1b6312db12df 100644
--- a/nixpkgs/pkgs/tools/misc/pgmetrics/default.nix
+++ b/nixpkgs/pkgs/tools/misc/pgmetrics/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "pgmetrics";
-  version = "1.15.1";
+  version = "1.15.2";
 
   src = fetchFromGitHub {
     owner = "rapidloop";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-6JqlAJHFJAvJjLqOwXLmW7sRwQCmYFfLGrSw5lTY8Sc=";
+    sha256 = "sha256-WzyTLOJo/wTZA9glxO0ovcaADlHV+AKLChWSLJ+uvaQ=";
   };
 
   vendorHash = "sha256-KIMnvGMIipuIFPTSeERtCfvlPuvHvEHdjBJ1TbT2d1s=";
diff --git a/nixpkgs/pkgs/tools/misc/phrase-cli/default.nix b/nixpkgs/pkgs/tools/misc/phrase-cli/default.nix
index a4eba4aaf0a4..3de9148c98ab 100644
--- a/nixpkgs/pkgs/tools/misc/phrase-cli/default.nix
+++ b/nixpkgs/pkgs/tools/misc/phrase-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "phrase-cli";
-  version = "2.8.4";
+  version = "2.11.0";
 
   src = fetchFromGitHub {
     owner = "phrase";
     repo = "phrase-cli";
     rev = version;
-    sha256 = "sha256-tYpn93PSvO9g31soDOW0+gOBaypMUlx9Xfo0H3ftJQk=";
+    sha256 = "sha256-8LhXsrO0sXMu7cXNoLafwNgCO99zGcQBYcCmqJfM2KY=";
   };
 
-  vendorHash = "sha256-SooYBVXcll8QciK8J68wUAsAH6kN+lWlmPS8h0Hw4e0=";
+  vendorHash = "sha256-lbJetTERQKnDKmM1VqRWU0OjZPm+bfeQ9ZThs/TzxIU=";
 
   ldflags = [ "-X=github.com/phrase/phrase-cli/cmd.PHRASE_CLIENT_VERSION=${version}" ];
 
diff --git a/nixpkgs/pkgs/tools/misc/ripdrag/default.nix b/nixpkgs/pkgs/tools/misc/ripdrag/default.nix
index cf1f41dfdc6e..67151cd060e5 100644
--- a/nixpkgs/pkgs/tools/misc/ripdrag/default.nix
+++ b/nixpkgs/pkgs/tools/misc/ripdrag/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ripdrag";
-  version = "0.4.2";
+  version = "0.4.3";
 
   src = fetchFromGitHub {
     owner = "nik012003";
     repo = "ripdrag";
     rev = "v${version}";
-    hash = "sha256-YTr4vxPsZAQmzE1aE7PAgUEqEyr6pywAQO4VCZ4SZoM=";
+    hash = "sha256-SvGJb/XosR8T/bg7nhjXR15Ba1MLaerJvoetYDtgHiM=";
   };
 
-  cargoHash = "sha256-sUT05qY1eI0kw/kDvKcD93Zg2ZcKlHu+DSQIhFChf0I=";
+  cargoHash = "sha256-O/Xp+dZ+Pv1/yNS/KYbF2wQguq/udtJlRPeP4v3U0Vs=";
 
   nativeBuildInputs = [ pkg-config wrapGAppsHook4 ];
 
diff --git a/nixpkgs/pkgs/tools/misc/routino/default.nix b/nixpkgs/pkgs/tools/misc/routino/default.nix
index 5f2a8852e319..ea882749a534 100644
--- a/nixpkgs/pkgs/tools/misc/routino/default.nix
+++ b/nixpkgs/pkgs/tools/misc/routino/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "routino";
-  version = "3.3.3";
+  version = "3.4.1";
 
   src = fetchurl {
     url = "https://routino.org/download/${pname}-${version}.tgz";
-    sha256 = "1xa7l2bjn832nk6bc7b481nv8hd2gj41jwhg0d2qy10lqdvjpn5b";
+    hash = "sha256-C6qNKljRdV0ProbgSxfrZLgZH+Pl8kcpKmTb83GLhSs=";
   };
 
   patchFlags = [ "-p0" ];
@@ -38,6 +38,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "http://www.routino.org/";
+    changelog = "http://routino.org/software/NEWS.txt";
     description = "OpenStreetMap Routing Software";
     license = licenses.agpl3Plus;
     maintainers = with maintainers; [ dotlambda ];
diff --git a/nixpkgs/pkgs/tools/misc/rpi-imager/default.nix b/nixpkgs/pkgs/tools/misc/rpi-imager/default.nix
index e875d5a59550..61ca001563f5 100644
--- a/nixpkgs/pkgs/tools/misc/rpi-imager/default.nix
+++ b/nixpkgs/pkgs/tools/misc/rpi-imager/default.nix
@@ -1,31 +1,43 @@
-{ mkDerivation,
-  stdenv,
-  lib,
-  fetchFromGitHub,
-  cmake,
-  curl,
-  libarchive,
-  util-linux,
-  qtbase,
-  qtdeclarative,
-  qtsvg,
-  qttools,
-  qtquickcontrols2,
-  qtgraphicaleffects
+{ lib
+, stdenv
+, fetchFromGitHub
+, wrapQtAppsHook
+, cmake
+, util-linux
+, curl
+, libarchive
+, qtbase
+, qtdeclarative
+, qtsvg
+, qttools
+, qtquickcontrols2
+, qtgraphicaleffects
+, nix-update-script
+, enableTelemetry ? false
 }:
 
-mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "rpi-imager";
-  version = "1.7.4";
+  version = "1.7.5";
 
   src = fetchFromGitHub {
     owner = "raspberrypi";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ahETmUhlPZ3jpxmzDK5pS6yLc6UxCJFOtWolAtSrDVQ=";
+    sha256 = "sha256-yB+H1zWL40KzxOrBuvg7nBC3zmWilsOgOW7ndiDWuDA=";
   };
 
-  nativeBuildInputs = [ cmake util-linux ];
+  nativeBuildInputs = [
+    cmake
+    util-linux
+    wrapQtAppsHook
+  ];
+
+  # Disable telemetry and update check.
+  cmakeFlags = lib.optionals (!enableTelemetry) [
+    "-DENABLE_CHECK_VERSION=OFF"
+    "-DENABLE_TELEMETRY=OFF"
+  ];
 
   buildInputs = [
     curl
@@ -45,12 +57,29 @@ mkDerivation rec {
     This patch removes the check. */
   patches = [ ./lsblkCheckFix.patch ];
 
+  doInstallCheck = true;
+
+  installCheckPhase = ''
+    runHook preInstallCheck
+
+    # Without this, the tests fail because they cannot create the QT Window
+    export QT_QPA_PLATFORM=offscreen
+    $out/bin/rpi-imager --version
+
+    runHook postInstallCheck
+  '';
+
+  passthru = {
+    updateScript = nix-update-script { };
+  };
+
   meta = with lib; {
     description = "Raspberry Pi Imaging Utility";
-    homepage = "https://www.raspberrypi.org/software/";
+    homepage = "https://www.raspberrypi.com/software/";
+    changelog = "https://github.com/raspberrypi/rpi-imager/releases/tag/v${version}";
     downloadPage = "https://github.com/raspberrypi/rpi-imager/";
     license = licenses.asl20;
-    maintainers = with maintainers; [ ymarkus ];
+    maintainers = with maintainers; [ ymarkus anthonyroussel ];
     platforms = platforms.all;
     # does not build on darwin
     broken = stdenv.isDarwin;
diff --git a/nixpkgs/pkgs/tools/misc/rpi-imager/lsblkCheckFix.patch b/nixpkgs/pkgs/tools/misc/rpi-imager/lsblkCheckFix.patch
index 98fd2a659dc8..aa4fdeecfdb0 100644
--- a/nixpkgs/pkgs/tools/misc/rpi-imager/lsblkCheckFix.patch
+++ b/nixpkgs/pkgs/tools/misc/rpi-imager/lsblkCheckFix.patch
@@ -1,16 +1,16 @@
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 3d7fc79..8ce72b9 100644
+index 170ce7a..063a137 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -229,11 +229,6 @@ else()
+@@ -332,11 +332,6 @@ else()
          if (NOT LSBLK)
              message(FATAL_ERROR "Unable to locate lsblk (used for disk enumeration)")
          endif()
 -
--        execute_process(COMMAND "${LSBLK}" "--json" RESULT_VARIABLE ret)
+-        execute_process(COMMAND "${LSBLK}" "--json" OUTPUT_QUIET RESULT_VARIABLE ret)
 -        if (ret EQUAL "1")
 -            message(FATAL_ERROR "util-linux package too old. lsblk does not support --json (used for disk enumeration)")
 -        endif()
      endif()
- 
+
      configure_file(
diff --git a/nixpkgs/pkgs/tools/misc/shopware-cli/default.nix b/nixpkgs/pkgs/tools/misc/shopware-cli/default.nix
index 7d1c29c956f2..b553ab269d7c 100644
--- a/nixpkgs/pkgs/tools/misc/shopware-cli/default.nix
+++ b/nixpkgs/pkgs/tools/misc/shopware-cli/default.nix
@@ -4,21 +4,23 @@
 , installShellFiles
 , makeWrapper
 , dart-sass
+, git
 }:
 
 buildGoModule rec {
   pname = "shopware-cli";
-  version = "0.2.1";
+  version = "0.2.6";
   src = fetchFromGitHub {
     repo = "shopware-cli";
     owner = "FriendsOfShopware";
     rev = version;
-    hash = "sha256-3upZmqsKCg98j/HTwFp0L7MMspCw7Dj6dRoyEPW287k=";
+    hash = "sha256-Ut/SKdnaJM4B6jXXcRS6UJ1qCEgnZy977qlZbH8S6qU=";
   };
 
   nativeBuildInputs = [ installShellFiles makeWrapper ];
+  nativeCheckInputs = [ git ];
 
-  vendorHash = "sha256-KEWACwZka4WMQS4/O6WkIdeeUnxtcpEwQmMlNBLUjbI=";
+  vendorHash = "sha256-luA+tSePY8V+BQBTykv236mq4z3wQjLrjeYH2KQ0Mrc=";
 
   postInstall = ''
     export HOME="$(mktemp -d)"
diff --git a/nixpkgs/pkgs/tools/misc/slingshot/default.nix b/nixpkgs/pkgs/tools/misc/slingshot/default.nix
new file mode 100644
index 000000000000..48ea7f24c040
--- /dev/null
+++ b/nixpkgs/pkgs/tools/misc/slingshot/default.nix
@@ -0,0 +1,27 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "slingshot";
+  version = "0.2.3";
+
+  src = fetchFromGitHub {
+    owner = "caio-ishikawa";
+    repo = "slingshot";
+    rev = "v${version}";
+    hash = "sha256-PbcpvSBYoRs8TMkbbQjG284BWr+PSaTStPOg4a1GIrw=";
+  };
+
+  cargoHash = "sha256-Y0H88paBe2yyUyTdwxXO58YFDdH04kK+nHvi1qyYVF0=";
+
+  meta = with lib; {
+    description = "Lightweight command line tool to quickly navigate across folders";
+    homepage = "https://github.com/caio-ishikawa/slingshot";
+    changelog = "https://github.com/caio-ishikawa/slingshot/releases/tag/${src.rev}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ figsoda ];
+    mainProgram = "slingshot";
+  };
+}
diff --git a/nixpkgs/pkgs/tools/misc/smenu/default.nix b/nixpkgs/pkgs/tools/misc/smenu/default.nix
index ed45be67d200..9768b33c5ce9 100644
--- a/nixpkgs/pkgs/tools/misc/smenu/default.nix
+++ b/nixpkgs/pkgs/tools/misc/smenu/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, ncurses }:
 
 stdenv.mkDerivation rec {
-  version = "1.2.0";
+  version = "1.3.0";
   pname = "smenu";
 
   src = fetchFromGitHub {
     owner = "p-gen";
     repo = "smenu";
     rev = "v${version}";
-    sha256 = "sha256-DfND2lIHQc+7+8lM86MMOdFKhbUAOnSlkpLwxo10EI4=";
+    sha256 = "sha256-r2N+MmZI2KCuYarrFL2Xn5hu4FO3n5MqADRuTXMOtk0=";
   };
 
   buildInputs = [ ncurses ];
diff --git a/nixpkgs/pkgs/tools/misc/spacer/default.nix b/nixpkgs/pkgs/tools/misc/spacer/default.nix
index f6c6db98998e..4452b72ba836 100644
--- a/nixpkgs/pkgs/tools/misc/spacer/default.nix
+++ b/nixpkgs/pkgs/tools/misc/spacer/default.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "spacer";
-  version = "0.1.8";
+  version = "0.2";
 
   src = fetchFromGitHub {
     owner = "samwho";
     repo = "spacer";
     rev = "v${version}";
-    hash = "sha256-F2PrBlS9uL6BQtjNNabCpl3ofavsUGlBy/Hotm42Oec=";
+    hash = "sha256-6RGwOyp/TzO7Z2xpcNFtAb+UaiMmgiuac9nqZs4fC10=";
   };
 
-  cargoHash = "sha256-aeXvqgSKRvm9W6sc5XCkwhMYUncj8pEPyQpYQr+fj7Y=";
+  cargoHash = "sha256-XWXrivx0TJZmu5jJYJAzKm6dzqOwiWwU8mRuehZkQbA=";
 
   meta = with lib; {
     description = "CLI tool to insert spacers when command output stops";
diff --git a/nixpkgs/pkgs/tools/misc/tgpt/default.nix b/nixpkgs/pkgs/tools/misc/tgpt/default.nix
index 543aa24aa9ec..96b4ccce6bd8 100644
--- a/nixpkgs/pkgs/tools/misc/tgpt/default.nix
+++ b/nixpkgs/pkgs/tools/misc/tgpt/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "tgpt";
-  version = "1.7.2";
+  version = "1.7.4";
 
   src = fetchFromGitHub {
     owner = "aandrew-me";
     repo = "tgpt";
     rev = "refs/tags/v${version}";
-    hash = "sha256-e1OPDhZuRbm6DqvmB1ZiXVRSnjaZEFi2gSIMnfIIHKE=";
+    hash = "sha256-JOCoyGSIdHWa7/4fwSoaTFLqk5EE9Ni4UFCD7BvFeoQ=";
   };
 
   vendorHash = "sha256-2I5JJWxM6aZx0eZu7taUTL11Y/5HIrXYC5aezrTbbsM=";
diff --git a/nixpkgs/pkgs/tools/misc/tlp/default.nix b/nixpkgs/pkgs/tools/misc/tlp/default.nix
index 4d1ff026f21e..023028879245 100644
--- a/nixpkgs/pkgs/tools/misc/tlp/default.nix
+++ b/nixpkgs/pkgs/tools/misc/tlp/default.nix
@@ -24,13 +24,13 @@
 , networkmanager
 }: stdenv.mkDerivation rec {
   pname = "tlp";
-  version = "1.5.0";
+  version = "1.6.0";
 
   src = fetchFromGitHub {
     owner = "linrunner";
     repo = "TLP";
     rev = version;
-    sha256 = "sha256-hHel3BVMzTYfE59kxxADnm8tqtUFntqS3RzmJSZlWjM=";
+    hash = "sha256-XAyko2MxFyo5RyioaexhoFAR3E+I3t/8vD2K3WYNmsI=";
   };
 
   # XXX: See patch files for relevant explanations.
@@ -127,6 +127,7 @@
     description = "Advanced Power Management for Linux";
     homepage =
       "https://linrunner.de/en/tlp/docs/tlp-linux-advanced-power-management.html";
+    changelog = "https://github.com/linrunner/TLP/releases/tag/${version}";
     platforms = platforms.linux;
     maintainers = with maintainers; [ abbradar lovesegfault ];
     license = licenses.gpl2Plus;
diff --git a/nixpkgs/pkgs/tools/misc/tlp/patches/0001-makefile-correctly-sed-paths.patch b/nixpkgs/pkgs/tools/misc/tlp/patches/0001-makefile-correctly-sed-paths.patch
index be8afc0667fa..278cd0b1dde8 100644
--- a/nixpkgs/pkgs/tools/misc/tlp/patches/0001-makefile-correctly-sed-paths.patch
+++ b/nixpkgs/pkgs/tools/misc/tlp/patches/0001-makefile-correctly-sed-paths.patch
@@ -15,14 +15,14 @@ The reason DESTDIR is used at all, as opposed to the more appropriate
 PREFIX, is covered in the nix formula, and is (also) due to the Makefile
 being a bit "different."
 ---
- Makefile | 18 +++++++++---------
- 1 file changed, 9 insertions(+), 9 deletions(-)
+ Makefile | 20 ++++++++++----------
+ 1 file changed, 10 insertions(+), 10 deletions(-)
 
 diff --git a/Makefile b/Makefile
-index e9bbab4..ab05720 100644
+index 8042517..1c436ad 100644
 --- a/Makefile
 +++ b/Makefile
-@@ -51,19 +51,19 @@ _TPACPIBAT = $(DESTDIR)$(TPACPIBAT)
+@@ -57,20 +57,20 @@ _TPACPIBAT = $(DESTDIR)$(TPACPIBAT)
  
  SED = sed \
  	-e "s|@TLPVER@|$(TLPVER)|g" \
@@ -40,9 +40,11 @@ index e9bbab4..ab05720 100644
  	-e "s|@TLP_CONFDIR@|$(TLP_CONFDIR)|g" \
 -	-e "s|@TLP_CONFDEF@|$(TLP_CONFDEF)|g" \
 -	-e "s|@TLP_CONFREN@|$(TLP_CONFREN)|g" \
+-	-e "s|@TLP_CONFDPR@|$(TLP_CONFDPR)|g" \
 -	-e "s|@TLP_CONF@|$(TLP_CONF)|g" \
 +	-e "s|@TLP_CONFDEF@|$(_CONFDEF)|g" \
 +	-e "s|@TLP_CONFREN@|$(_CONFREN)|g" \
++	-e "s|@TLP_CONFDPR@|$(_CONFDPR)|g" \
 +	-e "s|@TLP_CONF@|$(_CONF)|g" \
  	-e "s|@TLP_RUN@|$(TLP_RUN)|g"   \
  	-e "s|@TLP_VAR@|$(TLP_VAR)|g"   \
@@ -52,5 +54,5 @@ index e9bbab4..ab05720 100644
  INFILES = \
  	tlp \
 -- 
-2.33.0
+2.41.0
 
diff --git a/nixpkgs/pkgs/tools/misc/tlp/patches/0002-reintroduce-tlp-sleep-service.patch b/nixpkgs/pkgs/tools/misc/tlp/patches/0002-reintroduce-tlp-sleep-service.patch
index 08bbafc4b9da..dfea1c61636d 100644
--- a/nixpkgs/pkgs/tools/misc/tlp/patches/0002-reintroduce-tlp-sleep-service.patch
+++ b/nixpkgs/pkgs/tools/misc/tlp/patches/0002-reintroduce-tlp-sleep-service.patch
@@ -13,17 +13,15 @@ systemd itself to not use the hook scripts. As per the manual:
 > they should rather use the Inhibitor interface[1].
 ---
  Makefile             |  6 +++---
- tlp-sleep            | 11 -----------
  tlp-sleep.service.in | 19 +++++++++++++++++++
- 3 files changed, 22 insertions(+), 14 deletions(-)
- delete mode 100644 tlp-sleep
+ 2 files changed, 22 insertions(+), 3 deletions(-)
  create mode 100644 tlp-sleep.service.in
 
 diff --git a/Makefile b/Makefile
-index ab05720..075b42f 100644
+index 1c436ad..fd5211b 100644
 --- a/Makefile
 +++ b/Makefile
-@@ -76,6 +76,7 @@ INFILES = \
+@@ -84,6 +84,7 @@ INFILES = \
  	tlp.rules \
  	tlp-readconfs \
  	tlp-run-on \
@@ -31,15 +29,15 @@ index ab05720..075b42f 100644
  	tlp.service \
  	tlp-stat \
  	tlp.upstart \
-@@ -106,7 +107,6 @@ SHFILES = \
+@@ -115,7 +116,6 @@ SHFILES = \
  	tlp-rdw-udev.in \
  	tlp-rf.in \
  	tlp-run-on.in \
 -	tlp-sleep \
  	tlp-sleep.elogind \
  	tlp-stat.in \
- 	tlp-usb-udev.in
-@@ -159,7 +159,7 @@ ifneq ($(TLP_NO_INIT),1)
+ 	tlp-usb-udev.in \
+@@ -172,7 +172,7 @@ ifneq ($(TLP_NO_INIT),1)
  endif
  ifneq ($(TLP_WITH_SYSTEMD),0)
  	install -D -m 644 tlp.service $(_SYSD)/tlp.service
@@ -48,7 +46,7 @@ index ab05720..075b42f 100644
  endif
  ifneq ($(TLP_WITH_ELOGIND),0)
  	install -D -m 755 tlp-sleep.elogind $(_ELOD)/49-tlp-sleep
-@@ -216,7 +216,7 @@ uninstall-tlp:
+@@ -240,7 +240,7 @@ uninstall-tlp:
  	rm $(_ULIB)/rules.d/85-tlp.rules
  	rm -f $(_SYSV)/tlp
  	rm -f $(_SYSD)/tlp.service
@@ -83,5 +81,5 @@ index 0000000..79c202c
 +[Install]
 +WantedBy=sleep.target
 -- 
-2.33.0
+2.41.0
 
diff --git a/nixpkgs/pkgs/tools/misc/tmuxp/default.nix b/nixpkgs/pkgs/tools/misc/tmuxp/default.nix
index 2b153d230f28..cd80aa3495cb 100644
--- a/nixpkgs/pkgs/tools/misc/tmuxp/default.nix
+++ b/nixpkgs/pkgs/tools/misc/tmuxp/default.nix
@@ -2,18 +2,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "tmuxp";
-  version = "1.28.1";
+  version = "1.29.0";
+  format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-sNLqUyas6QY11eW/FhkqB6+u4MTqiY1ixvD3BN69Fic=";
+    hash = "sha256-MiXG4MVzomyc4LjovPsvhmPngtJv85s6Ypo/Cm2Whho=";
   };
 
-  # No tests in archive
-  doCheck = false;
-
-  format = "pyproject";
-
   nativeBuildInputs = [
     python3Packages.poetry-core
     python3Packages.shtab
@@ -27,6 +23,9 @@ python3Packages.buildPythonApplication rec {
     libtmux
   ];
 
+  # No tests in archive
+  doCheck = false;
+
   postInstall = ''
     installShellCompletion --cmd tmuxp \
       --bash <(shtab --shell=bash -u tmuxp.cli.create_parser) \
diff --git a/nixpkgs/pkgs/tools/misc/url-parser/default.nix b/nixpkgs/pkgs/tools/misc/url-parser/default.nix
index d5655324a0a5..27df534d8756 100644
--- a/nixpkgs/pkgs/tools/misc/url-parser/default.nix
+++ b/nixpkgs/pkgs/tools/misc/url-parser/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "url-parser";
-  version = "1.0.4";
+  version = "1.0.5";
 
   src = fetchFromGitHub {
     owner = "thegeeklab";
     repo = "url-parser";
-    rev = "v${version}";
-    hash = "sha256-rOL6merwQ6CQkdsYGOpFttkJIy2EXCKMGIbAqqmYdvM=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-A+uoxwPdWdy12Avl2Ci+zd9TFmQFA22pMbsxtWpNPpc=";
   };
 
-  vendorHash = "sha256-ZaZlIGk44eX0ER2sdLdSvN2qdKVyEPsXjfCuJzJGspE=";
+  vendorHash = "sha256-8doDVHyhQKsBeN1H73KV/rxhpumDLIzjahdjtW79Bek=";
 
   ldflags = [
     "-s"
@@ -26,6 +26,7 @@ buildGoModule rec {
   meta = with lib; {
     description = "Simple command-line URL parser";
     homepage = "https://github.com/thegeeklab/url-parser";
+    changelog = "https://github.com/thegeeklab/url-parser/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ doronbehar ];
   };
diff --git a/nixpkgs/pkgs/tools/misc/usbimager/default.nix b/nixpkgs/pkgs/tools/misc/usbimager/default.nix
index 533f61a9c7d1..a3660d71da4c 100644
--- a/nixpkgs/pkgs/tools/misc/usbimager/default.nix
+++ b/nixpkgs/pkgs/tools/misc/usbimager/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-CEGUXJXqXmD8uT93T9dg49Lf5vTpAzQjdnhYmbR5zTI=";
   };
 
-  sourceRoot = "${src.name}/src/";
+  sourceRoot = "${src.name}/src";
 
   nativeBuildInputs = [ pkg-config wrapGAppsHook ];
   buildInputs = lib.optionals withUdisks [ udisks glib ]
diff --git a/nixpkgs/pkgs/tools/misc/vial/default.nix b/nixpkgs/pkgs/tools/misc/vial/default.nix
index 6834a53bb6ec..40d3a7c3322d 100644
--- a/nixpkgs/pkgs/tools/misc/vial/default.nix
+++ b/nixpkgs/pkgs/tools/misc/vial/default.nix
@@ -1,12 +1,12 @@
 { lib, fetchurl, appimageTools }:
 let
   name = "vial-${version}";
-  version = "0.6";
+  version = "0.7";
   pname = "Vial";
 
   src = fetchurl {
     url = "https://github.com/vial-kb/vial-gui/releases/download/v${version}/${pname}-v${version}-x86_64.AppImage";
-    sha256 = "sha256-2EapikmY79KQdoHnz1A7gErVXBN8D80r1GJMKQ5gIM0=";
+    hash = "sha256-IvOjwboxc3KRKUMXW3dWoHMy8Oh7NGsu0GIJcLZ6WR8=";
   };
 
   appimageContents = appimageTools.extractType2 { inherit name src; };
@@ -23,11 +23,13 @@ appimageTools.wrapType2 {
     echo 'KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0666", TAG+="uaccess", TAG+="udev-acl"' > $out/etc/udev/rules.d/92-viia.rules
   '';
 
-  meta = with lib; {
-    description = "An Open-source QMK GUI fork for configuring your keyboard in real time";
+  meta = {
+    description = "An Open-source GUI and QMK fork for configuring your keyboard in real time";
     homepage = "https://get.vial.today";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ kranzes ];
+    license = lib.licenses.gpl2Plus;
+    mainProgram = "vial";
+    maintainers = with lib.maintainers; [ kranzes ];
     platforms = [ "x86_64-linux" ];
+    sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/misc/viddy/default.nix b/nixpkgs/pkgs/tools/misc/viddy/default.nix
index 0b48f4c6986f..385663f40c85 100644
--- a/nixpkgs/pkgs/tools/misc/viddy/default.nix
+++ b/nixpkgs/pkgs/tools/misc/viddy/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "viddy";
-  version = "0.3.6";
+  version = "0.3.7";
 
   src = fetchFromGitHub {
     owner = "sachaos";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-AcRfKu6P7b/HsuC6DTezbYLI9rQZwjklH/bs7mKITUk=";
+    hash = "sha256-82q73L0641d5qNmB+WLkUmDP5OHMoj2SNFc+FhknhwU=";
   };
 
-  vendorSha256 = "sha256-QxYM4N3E/BqmeNaofLR1crwFLVaF3IigDXKlKA2Bkuw=";
+  vendorHash = "sha256-FMSgLI1W5keRnSYVyY0XuarMzLWvm9D1ufUYmZttfxk=";
 
   ldflags = [
     "-s"
diff --git a/nixpkgs/pkgs/tools/misc/vrc-get/default.nix b/nixpkgs/pkgs/tools/misc/vrc-get/default.nix
index f33290e662c6..c0099d822e40 100644
--- a/nixpkgs/pkgs/tools/misc/vrc-get/default.nix
+++ b/nixpkgs/pkgs/tools/misc/vrc-get/default.nix
@@ -2,13 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "vrc-get";
-  version = "1.1.2";
+  version = "1.1.3";
 
   src = fetchFromGitHub {
     owner = "anatawa12";
     repo = pname;
     rev = "v${version}";
-    sha256 = "03p3y6q6md2m6fj9v01419cy1wa13dhasd2izs7j9gl9jh69w9xm";
+    hash = "sha256-CJBwW2QsLNLyNubawBPD+Cy74JrrdSUHe7JBSdbMnjY=";
+    fetchSubmodules = true;
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -18,7 +19,7 @@ rustPlatform.buildRustPackage rec {
   # Make openssl-sys use pkg-config.
   OPENSSL_NO_VENDOR = 1;
 
-  cargoSha256 = "03lv72gw39q7hibg2rzibvc1y0az30691jdf2fwn1m5ng0r7lqvp";
+  cargoHash = "sha256-PnNo+MmBo/Ke7pL6KwRKXz3gycJmbYefTRMWOvlCQaQ=";
 
   meta = with lib; {
     description = "Command line client of VRChat Package Manager, the main feature of VRChat Creator Companion (VCC)";
diff --git a/nixpkgs/pkgs/tools/misc/wasm-tools/Cargo.lock b/nixpkgs/pkgs/tools/misc/wasm-tools/Cargo.lock
deleted file mode 100644
index 131ab047353d..000000000000
--- a/nixpkgs/pkgs/tools/misc/wasm-tools/Cargo.lock
+++ /dev/null
@@ -1,2474 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "addr2line"
-version = "0.19.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97"
-dependencies = [
- "gimli",
-]
-
-[[package]]
-name = "addr2line"
-version = "0.20.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3"
-dependencies = [
- "cpp_demangle 0.4.2",
- "fallible-iterator",
- "gimli",
- "memmap2",
- "object 0.31.1",
- "rustc-demangle",
- "smallvec",
-]
-
-[[package]]
-name = "adler"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-
-[[package]]
-name = "ahash"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f"
-dependencies = [
- "cfg-if",
- "once_cell",
- "version_check",
-]
-
-[[package]]
-name = "aho-corasick"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6748e8def348ed4d14996fa801f4122cd763fff530258cdc03f64b25f89d3a5a"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "anstream"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163"
-dependencies = [
- "anstyle",
- "anstyle-parse",
- "anstyle-query",
- "anstyle-wincon",
- "colorchoice",
- "is-terminal",
- "utf8parse",
-]
-
-[[package]]
-name = "anstyle"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd"
-
-[[package]]
-name = "anstyle-parse"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333"
-dependencies = [
- "utf8parse",
-]
-
-[[package]]
-name = "anstyle-query"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b"
-dependencies = [
- "windows-sys",
-]
-
-[[package]]
-name = "anstyle-wincon"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c677ab05e09154296dd37acecd46420c17b9713e8366facafa8fc0885167cf4c"
-dependencies = [
- "anstyle",
- "windows-sys",
-]
-
-[[package]]
-name = "anyhow"
-version = "1.0.75"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
-
-[[package]]
-name = "arbitrary"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2d098ff73c1ca148721f37baad5ea6a465a13f9573aba8641fbbbae8164a54e"
-dependencies = [
- "derive_arbitrary",
-]
-
-[[package]]
-name = "arrayref"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545"
-
-[[package]]
-name = "arrayvec"
-version = "0.7.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
-
-[[package]]
-name = "atty"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-dependencies = [
- "hermit-abi 0.1.19",
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "autocfg"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
-
-[[package]]
-name = "bincode"
-version = "1.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "bitflags"
-version = "2.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635"
-
-[[package]]
-name = "blake3"
-version = "1.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "199c42ab6972d92c9f8995f086273d25c42fc0f7b2a1fcefba465c1352d25ba5"
-dependencies = [
- "arrayref",
- "arrayvec",
- "cc",
- "cfg-if",
- "constant_time_eq",
- "digest",
-]
-
-[[package]]
-name = "block-buffer"
-version = "0.10.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "bumpalo"
-version = "3.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1"
-
-[[package]]
-name = "byteorder"
-version = "1.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
-
-[[package]]
-name = "cast"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
-
-[[package]]
-name = "cc"
-version = "1.0.82"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "305fe645edc1442a0fa8b6726ba61d422798d37a52e12eaecf4b022ebbb88f01"
-dependencies = [
- "jobserver",
- "libc",
-]
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "clap"
-version = "2.34.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
-dependencies = [
- "bitflags 1.3.2",
- "textwrap",
- "unicode-width",
-]
-
-[[package]]
-name = "clap"
-version = "4.3.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03aef18ddf7d879c15ce20f04826ef8418101c7e528014c3eeea13321047dca3"
-dependencies = [
- "clap_builder",
- "clap_derive",
- "once_cell",
-]
-
-[[package]]
-name = "clap_builder"
-version = "4.3.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f8ce6fffb678c9b80a70b6b6de0aad31df727623a70fd9a842c30cd573e2fa98"
-dependencies = [
- "anstream",
- "anstyle",
- "clap_lex",
- "strsim",
-]
-
-[[package]]
-name = "clap_derive"
-version = "4.3.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54a9bb5758fc5dfe728d1019941681eccaf0cf8a4189b692a0ee2f2ecf90a050"
-dependencies = [
- "heck",
- "proc-macro2",
- "quote",
- "syn 2.0.29",
-]
-
-[[package]]
-name = "clap_lex"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b"
-
-[[package]]
-name = "colorchoice"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
-
-[[package]]
-name = "constant_time_eq"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7144d30dcf0fafbce74250a3963025d8d52177934239851c917d29f1df280c2"
-
-[[package]]
-name = "cpp_demangle"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eeaa953eaad386a53111e47172c2fedba671e5684c8dd601a5f474f4f118710f"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "cpp_demangle"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee34052ee3d93d6d8f3e6f81d85c47921f6653a19a7b70e939e3e602d893a674"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "cranelift-bforest"
-version = "0.98.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1380172556902242d32f78ed08c98aac4f5952aef22d3684aed5c66a5db0a6fc"
-dependencies = [
- "cranelift-entity",
-]
-
-[[package]]
-name = "cranelift-codegen"
-version = "0.98.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "037cca234e1ad0766fdfe43b527ec14e100414b4ccf4bb614977aa9754958f57"
-dependencies = [
- "bumpalo",
- "cranelift-bforest",
- "cranelift-codegen-meta",
- "cranelift-codegen-shared",
- "cranelift-control",
- "cranelift-entity",
- "cranelift-isle",
- "gimli",
- "hashbrown 0.13.2",
- "log",
- "regalloc2",
- "smallvec",
- "target-lexicon",
-]
-
-[[package]]
-name = "cranelift-codegen-meta"
-version = "0.98.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d375e6afa8b9a304999ea8cf58424414b8e55e004571265a4f0826eba8b74f18"
-dependencies = [
- "cranelift-codegen-shared",
-]
-
-[[package]]
-name = "cranelift-codegen-shared"
-version = "0.98.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca590e72ccb8da963def6e36460cce4412032b1f03c31d1a601838d305abdc39"
-
-[[package]]
-name = "cranelift-control"
-version = "0.98.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d2d38eea4373639f4b6236a40f69820fed16c5511093cd3783bf8491a93d9cf"
-dependencies = [
- "arbitrary",
-]
-
-[[package]]
-name = "cranelift-entity"
-version = "0.98.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e3173c1434af23c00e4964722cf93ca8f0e6287289bf5d52110597c3ba2ea09"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "cranelift-frontend"
-version = "0.98.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aec4a3a33825062eccf6eec73e852c8773220f6e4798925e19696562948beb1f"
-dependencies = [
- "cranelift-codegen",
- "log",
- "smallvec",
- "target-lexicon",
-]
-
-[[package]]
-name = "cranelift-isle"
-version = "0.98.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5146b5cea4b21095a021d964b0174cf6ff5530f83e8d0a822683c7559e360b66"
-
-[[package]]
-name = "cranelift-native"
-version = "0.98.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21cec3717ce554d3936b2101aa8eae1a2a410bd6da0f4df698a4b008fe9cf1e9"
-dependencies = [
- "cranelift-codegen",
- "libc",
- "target-lexicon",
-]
-
-[[package]]
-name = "cranelift-wasm"
-version = "0.98.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d7fd2f9f1bf29ce6639ae2f477a2fe20bad0bd09289df13efeb890e8e4b9f807"
-dependencies = [
- "cranelift-codegen",
- "cranelift-entity",
- "cranelift-frontend",
- "itertools",
- "log",
- "smallvec",
- "wasmparser 0.107.0",
- "wasmtime-types",
-]
-
-[[package]]
-name = "crc32fast"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "criterion"
-version = "0.3.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b01d6de93b2b6c65e17c634a26653a29d107b3c98c607c765bf38d041531cd8f"
-dependencies = [
- "atty",
- "cast",
- "clap 2.34.0",
- "criterion-plot",
- "csv",
- "itertools",
- "lazy_static",
- "num-traits",
- "oorandom",
- "plotters",
- "rayon",
- "regex",
- "serde",
- "serde_cbor",
- "serde_derive",
- "serde_json",
- "tinytemplate",
- "walkdir",
-]
-
-[[package]]
-name = "criterion-plot"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2673cc8207403546f45f5fd319a974b1e6983ad1a3ee7e6041650013be041876"
-dependencies = [
- "cast",
- "itertools",
-]
-
-[[package]]
-name = "crossbeam-channel"
-version = "0.5.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
-dependencies = [
- "cfg-if",
- "crossbeam-utils",
-]
-
-[[package]]
-name = "crossbeam-deque"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
-dependencies = [
- "cfg-if",
- "crossbeam-epoch",
- "crossbeam-utils",
-]
-
-[[package]]
-name = "crossbeam-epoch"
-version = "0.9.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7"
-dependencies = [
- "autocfg",
- "cfg-if",
- "crossbeam-utils",
- "memoffset 0.9.0",
- "scopeguard",
-]
-
-[[package]]
-name = "crossbeam-utils"
-version = "0.8.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "crypto-common"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
-dependencies = [
- "generic-array",
- "typenum",
-]
-
-[[package]]
-name = "csv"
-version = "1.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "626ae34994d3d8d668f4269922248239db4ae42d538b14c398b74a52208e8086"
-dependencies = [
- "csv-core",
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "csv-core"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b2466559f260f48ad25fe6317b3c8dac77b5bdb5763ac7d9d6103530663bc90"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "debugid"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef552e6f588e446098f6ba40d89ac146c8c7b64aade83c051ee00bb5d2bc18d"
-dependencies = [
- "uuid",
-]
-
-[[package]]
-name = "derive_arbitrary"
-version = "1.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53e0efad4403bfc52dc201159c4b842a246a14b98c64b55dfd0f2d89729dfeb8"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.29",
-]
-
-[[package]]
-name = "diff"
-version = "0.1.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8"
-
-[[package]]
-name = "digest"
-version = "0.10.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
-dependencies = [
- "block-buffer",
- "crypto-common",
- "subtle",
-]
-
-[[package]]
-name = "egg"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05a6c0bbc92278f84e742f08c0ab9cb16a987376cd2bc39d228ef9c74d98d6f7"
-dependencies = [
- "indexmap 1.9.3",
- "instant",
- "log",
- "once_cell",
- "smallvec",
- "symbolic_expressions",
-]
-
-[[package]]
-name = "either"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
-
-[[package]]
-name = "encoding_rs"
-version = "0.8.32"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "env_logger"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7"
-dependencies = [
- "atty",
- "humantime",
- "log",
- "regex",
- "termcolor",
-]
-
-[[package]]
-name = "equivalent"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
-
-[[package]]
-name = "errno"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f"
-dependencies = [
- "errno-dragonfly",
- "libc",
- "windows-sys",
-]
-
-[[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 = "fallible-iterator"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7"
-
-[[package]]
-name = "fastrand"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764"
-
-[[package]]
-name = "fixedbitset"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
-
-[[package]]
-name = "flagset"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cda653ca797810c02f7ca4b804b40b8b95ae046eb989d356bce17919a8c25499"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "flate2"
-version = "1.0.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010"
-dependencies = [
- "crc32fast",
- "miniz_oxide",
-]
-
-[[package]]
-name = "form_urlencoded"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652"
-dependencies = [
- "percent-encoding",
-]
-
-[[package]]
-name = "fuzz-stats"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "arbitrary",
- "num_cpus",
- "rand",
- "wasm-smith",
- "wasmtime",
-]
-
-[[package]]
-name = "fxhash"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
-dependencies = [
- "byteorder",
-]
-
-[[package]]
-name = "fxprof-processed-profile"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "27d12c0aed7f1e24276a241aadc4cb8ea9f83000f34bc062b7cc2d51e3b0fabd"
-dependencies = [
- "bitflags 2.4.0",
- "debugid",
- "fxhash",
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "generic-array"
-version = "0.14.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
-dependencies = [
- "typenum",
- "version_check",
-]
-
-[[package]]
-name = "getrandom"
-version = "0.2.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
-dependencies = [
- "cfg-if",
- "libc",
- "wasi",
-]
-
-[[package]]
-name = "gimli"
-version = "0.27.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e"
-dependencies = [
- "fallible-iterator",
- "indexmap 1.9.3",
- "stable_deref_trait",
-]
-
-[[package]]
-name = "glob"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
-
-[[package]]
-name = "half"
-version = "1.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7"
-
-[[package]]
-name = "hashbrown"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
-
-[[package]]
-name = "hashbrown"
-version = "0.13.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
-dependencies = [
- "ahash",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a"
-
-[[package]]
-name = "heck"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
-
-[[package]]
-name = "hermit-abi"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "hermit-abi"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b"
-
-[[package]]
-name = "humantime"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
-
-[[package]]
-name = "id-arena"
-version = "2.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005"
-
-[[package]]
-name = "idna"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c"
-dependencies = [
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "indexmap"
-version = "1.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
-dependencies = [
- "autocfg",
- "hashbrown 0.12.3",
- "serde",
-]
-
-[[package]]
-name = "indexmap"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d"
-dependencies = [
- "equivalent",
- "hashbrown 0.14.0",
- "serde",
-]
-
-[[package]]
-name = "instant"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "io-lifetimes"
-version = "1.0.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
-dependencies = [
- "hermit-abi 0.3.2",
- "libc",
- "windows-sys",
-]
-
-[[package]]
-name = "is-terminal"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b"
-dependencies = [
- "hermit-abi 0.3.2",
- "rustix 0.38.8",
- "windows-sys",
-]
-
-[[package]]
-name = "is_executable"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa9acdc6d67b75e626ad644734e8bc6df893d9cd2a834129065d3dd6158ea9c8"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "itertools"
-version = "0.10.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
-dependencies = [
- "either",
-]
-
-[[package]]
-name = "itoa"
-version = "1.0.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
-
-[[package]]
-name = "jobserver"
-version = "0.1.26"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "js-sys"
-version = "0.3.64"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a"
-dependencies = [
- "wasm-bindgen",
-]
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-[[package]]
-name = "leb128"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67"
-
-[[package]]
-name = "libc"
-version = "0.2.147"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
-
-[[package]]
-name = "libfuzzer-sys"
-version = "0.4.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a96cfd5557eb82f2b83fed4955246c988d331975a002961b07c81584d107e7f7"
-dependencies = [
- "arbitrary",
- "cc",
- "once_cell",
-]
-
-[[package]]
-name = "linux-raw-sys"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
-
-[[package]]
-name = "linux-raw-sys"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503"
-
-[[package]]
-name = "log"
-version = "0.4.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
-
-[[package]]
-name = "mach"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "memchr"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
-
-[[package]]
-name = "memfd"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffc89ccdc6e10d6907450f753537ebc5c5d3460d2e4e62ea74bd571db62c0f9e"
-dependencies = [
- "rustix 0.37.23",
-]
-
-[[package]]
-name = "memmap2"
-version = "0.5.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "memoffset"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "memoffset"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "miniz_oxide"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
-dependencies = [
- "adler",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "num_cpus"
-version = "1.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
-dependencies = [
- "hermit-abi 0.3.2",
- "libc",
-]
-
-[[package]]
-name = "object"
-version = "0.30.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03b4680b86d9cfafba8fc491dc9b6df26b68cf40e9e6cd73909194759a63c385"
-dependencies = [
- "crc32fast",
- "hashbrown 0.13.2",
- "indexmap 1.9.3",
- "memchr",
-]
-
-[[package]]
-name = "object"
-version = "0.31.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1"
-dependencies = [
- "flate2",
- "memchr",
- "ruzstd",
-]
-
-[[package]]
-name = "once_cell"
-version = "1.18.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
-
-[[package]]
-name = "oorandom"
-version = "11.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
-
-[[package]]
-name = "paste"
-version = "1.0.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
-
-[[package]]
-name = "percent-encoding"
-version = "2.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94"
-
-[[package]]
-name = "petgraph"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dd7d28ee937e54fe3080c91faa1c3a46c06de6252988a7f4592ba2310ef22a4"
-dependencies = [
- "fixedbitset",
- "indexmap 1.9.3",
-]
-
-[[package]]
-name = "plotters"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2c224ba00d7cadd4d5c660deaf2098e5e80e07846537c51f9cfa4be50c1fd45"
-dependencies = [
- "num-traits",
- "plotters-backend",
- "plotters-svg",
- "wasm-bindgen",
- "web-sys",
-]
-
-[[package]]
-name = "plotters-backend"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e76628b4d3a7581389a35d5b6e2139607ad7c75b17aed325f210aa91f4a9609"
-
-[[package]]
-name = "plotters-svg"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38f6d39893cca0701371e3c27294f09797214b86f1fb951b89ade8ec04e2abab"
-dependencies = [
- "plotters-backend",
-]
-
-[[package]]
-name = "ppv-lite86"
-version = "0.2.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
-
-[[package]]
-name = "pretty_assertions"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66"
-dependencies = [
- "diff",
- "yansi",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.66"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
-dependencies = [
- "unicode-ident",
-]
-
-[[package]]
-name = "psm"
-version = "0.1.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "pulldown-cmark"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffade02495f22453cd593159ea2f59827aae7f53fa8323f756799b670881dcf8"
-dependencies = [
- "bitflags 1.3.2",
- "memchr",
- "unicase",
-]
-
-[[package]]
-name = "pulldown-cmark"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77a1a2f1f0a7ecff9c31abbe177637be0e97a0aef46cf8738ece09327985d998"
-dependencies = [
- "bitflags 1.3.2",
- "memchr",
- "unicase",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.33"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "rand"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
-dependencies = [
- "libc",
- "rand_chacha",
- "rand_core",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
-dependencies = [
- "ppv-lite86",
- "rand_core",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
-dependencies = [
- "getrandom",
-]
-
-[[package]]
-name = "rayon"
-version = "1.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b"
-dependencies = [
- "either",
- "rayon-core",
-]
-
-[[package]]
-name = "rayon-core"
-version = "1.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d"
-dependencies = [
- "crossbeam-channel",
- "crossbeam-deque",
- "crossbeam-utils",
- "num_cpus",
-]
-
-[[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 = "regalloc2"
-version = "0.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b4dcbd3a2ae7fb94b5813fa0e957c6ab51bf5d0a8ee1b69e0c2d0f1e6eb8485"
-dependencies = [
- "hashbrown 0.13.2",
- "log",
- "rustc-hash",
- "slice-group-by",
- "smallvec",
-]
-
-[[package]]
-name = "regex"
-version = "1.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81bc1d4caf89fac26a70747fe603c130093b53c773888797a6329091246d651a"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-automata",
- "regex-syntax",
-]
-
-[[package]]
-name = "regex-automata"
-version = "0.3.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fed1ceff11a1dddaee50c9dc8e4938bd106e9d89ae372f192311e7da498e3b69"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-syntax",
-]
-
-[[package]]
-name = "regex-syntax"
-version = "0.7.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2"
-
-[[package]]
-name = "rustc-demangle"
-version = "0.1.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
-
-[[package]]
-name = "rustc-hash"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
-
-[[package]]
-name = "rustix"
-version = "0.37.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d69718bf81c6127a49dc64e44a742e8bb9213c0ff8869a22c308f84c1d4ab06"
-dependencies = [
- "bitflags 1.3.2",
- "errno",
- "io-lifetimes",
- "libc",
- "linux-raw-sys 0.3.8",
- "windows-sys",
-]
-
-[[package]]
-name = "rustix"
-version = "0.38.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19ed4fa021d81c8392ce04db050a3da9a60299050b7ae1cf482d862b54a7218f"
-dependencies = [
- "bitflags 2.4.0",
- "errno",
- "libc",
- "linux-raw-sys 0.4.5",
- "windows-sys",
-]
-
-[[package]]
-name = "ruzstd"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a15e661f0f9dac21f3494fe5d23a6338c0ac116a2d22c2b63010acd89467ffe"
-dependencies = [
- "byteorder",
- "thiserror",
- "twox-hash",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
-
-[[package]]
-name = "same-file"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "scopeguard"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
-
-[[package]]
-name = "semver"
-version = "1.0.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918"
-
-[[package]]
-name = "serde"
-version = "1.0.183"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32ac8da02677876d532745a130fc9d8e6edfa81a269b107c5b00829b91d8eb3c"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde_cbor"
-version = "0.11.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2bef2ebfde456fb76bbcf9f59315333decc4fda0b2b44b420243c11e0f5ec1f5"
-dependencies = [
- "half",
- "serde",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.183"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aafe972d60b0b9bee71a91b92fee2d4fb3c9d7e8f6b179aa99f27203d99a4816"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.29",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.105"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360"
-dependencies = [
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "serde_yaml"
-version = "0.9.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a49e178e4452f45cb61d0cd8cebc1b0fafd3e41929e996cef79aa3aca91f574"
-dependencies = [
- "indexmap 2.0.0",
- "itoa",
- "ryu",
- "serde",
- "unsafe-libyaml",
-]
-
-[[package]]
-name = "slice-group-by"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7"
-
-[[package]]
-name = "smallvec"
-version = "1.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9"
-
-[[package]]
-name = "spdx"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b19b32ed6d899ab23174302ff105c1577e45a06b08d4fe0a9dd13ce804bbbf71"
-dependencies = [
- "smallvec",
-]
-
-[[package]]
-name = "sptr"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b9b39299b249ad65f3b7e96443bad61c02ca5cd3589f46cb6d610a0fd6c0d6a"
-
-[[package]]
-name = "stable_deref_trait"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
-
-[[package]]
-name = "static_assertions"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-
-[[package]]
-name = "strsim"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
-
-[[package]]
-name = "subtle"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
-
-[[package]]
-name = "symbolic_expressions"
-version = "5.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c68d531d83ec6c531150584c42a4290911964d5f0d79132b193b67252a23b71"
-
-[[package]]
-name = "syn"
-version = "1.0.109"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "syn"
-version = "2.0.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "target-lexicon"
-version = "0.12.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d0e916b1148c8e263850e1ebcbd046f333e0683c724876bb0da63ea4373dc8a"
-
-[[package]]
-name = "tempfile"
-version = "3.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc02fddf48964c42031a0b3fe0428320ecf3a73c401040fc0096f97794310651"
-dependencies = [
- "cfg-if",
- "fastrand",
- "redox_syscall",
- "rustix 0.38.8",
- "windows-sys",
-]
-
-[[package]]
-name = "termcolor"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "textwrap"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-dependencies = [
- "unicode-width",
-]
-
-[[package]]
-name = "thiserror"
-version = "1.0.47"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f"
-dependencies = [
- "thiserror-impl",
-]
-
-[[package]]
-name = "thiserror-impl"
-version = "1.0.47"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.29",
-]
-
-[[package]]
-name = "tinytemplate"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc"
-dependencies = [
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "tinyvec"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
-dependencies = [
- "tinyvec_macros",
-]
-
-[[package]]
-name = "tinyvec_macros"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
-
-[[package]]
-name = "twox-hash"
-version = "1.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"
-dependencies = [
- "cfg-if",
- "static_assertions",
-]
-
-[[package]]
-name = "typenum"
-version = "1.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
-
-[[package]]
-name = "unicase"
-version = "2.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
-dependencies = [
- "version_check",
-]
-
-[[package]]
-name = "unicode-bidi"
-version = "0.3.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
-
-[[package]]
-name = "unicode-ident"
-version = "1.0.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c"
-
-[[package]]
-name = "unicode-normalization"
-version = "0.1.22"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
-dependencies = [
- "tinyvec",
-]
-
-[[package]]
-name = "unicode-width"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
-
-[[package]]
-name = "unicode-xid"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
-
-[[package]]
-name = "unsafe-libyaml"
-version = "0.2.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f28467d3e1d3c6586d8f25fa243f544f5800fec42d97032474e17222c2b75cfa"
-
-[[package]]
-name = "url"
-version = "2.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb"
-dependencies = [
- "form_urlencoded",
- "idna",
- "percent-encoding",
-]
-
-[[package]]
-name = "utf8parse"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
-
-[[package]]
-name = "uuid"
-version = "1.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d"
-
-[[package]]
-name = "version_check"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
-
-[[package]]
-name = "walkdir"
-version = "2.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698"
-dependencies = [
- "same-file",
- "winapi-util",
-]
-
-[[package]]
-name = "wasi"
-version = "0.11.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
-
-[[package]]
-name = "wasm-bindgen"
-version = "0.2.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342"
-dependencies = [
- "cfg-if",
- "wasm-bindgen-macro",
-]
-
-[[package]]
-name = "wasm-bindgen-backend"
-version = "0.2.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd"
-dependencies = [
- "bumpalo",
- "log",
- "once_cell",
- "proc-macro2",
- "quote",
- "syn 2.0.29",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-macro"
-version = "0.2.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
-dependencies = [
- "quote",
- "wasm-bindgen-macro-support",
-]
-
-[[package]]
-name = "wasm-bindgen-macro-support"
-version = "0.2.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.29",
- "wasm-bindgen-backend",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-shared"
-version = "0.2.87"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1"
-
-[[package]]
-name = "wasm-compose"
-version = "0.4.1"
-dependencies = [
- "anyhow",
- "glob",
- "heck",
- "indexmap 2.0.0",
- "log",
- "petgraph",
- "pretty_assertions",
- "serde",
- "serde_yaml",
- "smallvec",
- "wasm-encoder 0.31.1",
- "wasmparser 0.111.0",
- "wasmprinter 0.2.63",
- "wat",
- "wit-component",
-]
-
-[[package]]
-name = "wasm-encoder"
-version = "0.29.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18c41dbd92eaebf3612a39be316540b8377c871cb9bde6b064af962984912881"
-dependencies = [
- "leb128",
-]
-
-[[package]]
-name = "wasm-encoder"
-version = "0.31.1"
-dependencies = [
- "anyhow",
- "leb128",
- "tempfile",
- "wasmparser 0.111.0",
-]
-
-[[package]]
-name = "wasm-metadata"
-version = "0.10.2"
-dependencies = [
- "anyhow",
- "clap 4.3.23",
- "indexmap 2.0.0",
- "serde",
- "serde_json",
- "spdx",
- "wasm-encoder 0.31.1",
- "wasmparser 0.111.0",
- "wat",
-]
-
-[[package]]
-name = "wasm-mutate"
-version = "0.2.31"
-dependencies = [
- "anyhow",
- "clap 4.3.23",
- "egg",
- "env_logger",
- "log",
- "rand",
- "thiserror",
- "wasm-encoder 0.31.1",
- "wasmparser 0.111.0",
- "wasmprinter 0.2.63",
- "wat",
-]
-
-[[package]]
-name = "wasm-mutate-stats"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "arbitrary",
- "clap 4.3.23",
- "env_logger",
- "itertools",
- "log",
- "num_cpus",
- "rand",
- "wasm-mutate",
- "wasmparser 0.111.0",
- "wasmprinter 0.2.63",
- "wasmtime",
-]
-
-[[package]]
-name = "wasm-shrink"
-version = "0.1.32"
-dependencies = [
- "anyhow",
- "blake3",
- "clap 4.3.23",
- "env_logger",
- "log",
- "rand",
- "wasm-mutate",
- "wasmparser 0.111.0",
- "wasmprinter 0.2.63",
- "wat",
-]
-
-[[package]]
-name = "wasm-smith"
-version = "0.12.14"
-dependencies = [
- "arbitrary",
- "criterion",
- "flagset",
- "indexmap 2.0.0",
- "leb128",
- "libfuzzer-sys",
- "rand",
- "serde",
- "wasm-encoder 0.31.1",
- "wasmparser 0.111.0",
- "wasmprinter 0.2.63",
- "wat",
-]
-
-[[package]]
-name = "wasm-tools"
-version = "1.0.39"
-dependencies = [
- "addr2line 0.20.0",
- "anyhow",
- "arbitrary",
- "clap 4.3.23",
- "cpp_demangle 0.4.2",
- "diff",
- "env_logger",
- "gimli",
- "is_executable",
- "log",
- "pretty_assertions",
- "rayon",
- "regex",
- "rustc-demangle",
- "serde",
- "serde_json",
- "tempfile",
- "termcolor",
- "wasm-compose",
- "wasm-encoder 0.31.1",
- "wasm-metadata",
- "wasm-mutate",
- "wasm-shrink",
- "wasm-smith",
- "wasmparser 0.111.0",
- "wasmprinter 0.2.63",
- "wast",
- "wat",
- "wit-component",
- "wit-parser 0.10.0",
- "wit-smith",
-]
-
-[[package]]
-name = "wasm-tools-c-api"
-version = "0.1.1"
-dependencies = [
- "arbitrary",
- "wasm-mutate",
- "wasm-shrink",
- "wasm-smith",
- "wasmparser 0.111.0",
- "wasmprinter 0.2.63",
- "wast",
- "wat",
-]
-
-[[package]]
-name = "wasm-tools-fuzz"
-version = "0.0.1"
-dependencies = [
- "anyhow",
- "arbitrary",
- "env_logger",
- "libfuzzer-sys",
- "log",
- "tempfile",
- "wasm-encoder 0.31.1",
- "wasm-mutate",
- "wasm-smith",
- "wasmparser 0.111.0",
- "wasmprinter 0.2.63",
- "wasmtime",
- "wast",
- "wat",
- "wit-component",
- "wit-parser 0.10.0",
- "wit-smith",
-]
-
-[[package]]
-name = "wasmparser"
-version = "0.107.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29e3ac9b780c7dda0cac7a52a5d6d2d6707cc6e3451c9db209b6c758f40d7acb"
-dependencies = [
- "indexmap 1.9.3",
- "semver",
-]
-
-[[package]]
-name = "wasmparser"
-version = "0.111.0"
-dependencies = [
- "anyhow",
- "criterion",
- "indexmap 2.0.0",
- "once_cell",
- "rayon",
- "semver",
- "wasm-encoder 0.31.1",
- "wast",
- "wat",
-]
-
-[[package]]
-name = "wasmparser"
-version = "0.111.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad71036aada3f6b09251546e97e4f4f176dd6b41cf6fa55e7e0f65e86aec319a"
-dependencies = [
- "indexmap 2.0.0",
- "semver",
-]
-
-[[package]]
-name = "wasmprinter"
-version = "0.2.63"
-dependencies = [
- "anyhow",
- "diff",
- "rayon",
- "tempfile",
- "wasmparser 0.111.0",
- "wast",
- "wat",
-]
-
-[[package]]
-name = "wasmprinter"
-version = "0.2.63"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eeb8cc41d341939dce08ee902b50e36cd35add940f6044c94b144e8f73fe07a6"
-dependencies = [
- "anyhow",
- "wasmparser 0.111.0 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "wasmtime"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b1f817f2ca5070983c71f1205fbab5848c9073df7f4e1af9fdceb4cc4a1b8e5"
-dependencies = [
- "anyhow",
- "bincode",
- "bumpalo",
- "cfg-if",
- "encoding_rs",
- "fxprof-processed-profile",
- "indexmap 1.9.3",
- "libc",
- "log",
- "object 0.30.4",
- "once_cell",
- "paste",
- "psm",
- "serde",
- "serde_json",
- "target-lexicon",
- "wasmparser 0.107.0",
- "wasmtime-component-macro",
- "wasmtime-component-util",
- "wasmtime-cranelift",
- "wasmtime-environ",
- "wasmtime-jit",
- "wasmtime-runtime",
- "wasmtime-winch",
- "windows-sys",
-]
-
-[[package]]
-name = "wasmtime-asm-macros"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f82fbfda4610e9225238c62574ecded8e9d6ad3a12f387ac45819ecad5c3f9b"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "wasmtime-component-macro"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e27b96c540c78e12b60025fcbc0ba8a55bff1b32885a5e8eae2df765a6bc97ac"
-dependencies = [
- "anyhow",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
- "wasmtime-component-util",
- "wasmtime-wit-bindgen",
- "wit-parser 0.8.0",
-]
-
-[[package]]
-name = "wasmtime-component-util"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0928fe66c22bf8887e2fb524b7647308b8ce836a333af8504e4f1d80b8ea849f"
-
-[[package]]
-name = "wasmtime-cranelift"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b659f6e58662d1131f250339acd03aa49377f9351474282699985b79ca4d4a7c"
-dependencies = [
- "anyhow",
- "cranelift-codegen",
- "cranelift-control",
- "cranelift-entity",
- "cranelift-frontend",
- "cranelift-native",
- "cranelift-wasm",
- "gimli",
- "log",
- "object 0.30.4",
- "target-lexicon",
- "thiserror",
- "wasmparser 0.107.0",
- "wasmtime-cranelift-shared",
- "wasmtime-environ",
-]
-
-[[package]]
-name = "wasmtime-cranelift-shared"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74171de083bf2ecb716c507900f825e2b858346c714fbf48f4763ea760f998a8"
-dependencies = [
- "anyhow",
- "cranelift-codegen",
- "cranelift-control",
- "cranelift-native",
- "gimli",
- "object 0.30.4",
- "target-lexicon",
- "wasmtime-environ",
-]
-
-[[package]]
-name = "wasmtime-environ"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b124cbac1a3e04a744c76b3f77919343ef16dc4c818a2406dd7b689b16a54639"
-dependencies = [
- "anyhow",
- "cranelift-entity",
- "gimli",
- "indexmap 1.9.3",
- "log",
- "object 0.30.4",
- "serde",
- "target-lexicon",
- "thiserror",
- "wasm-encoder 0.29.0",
- "wasmparser 0.107.0",
- "wasmprinter 0.2.63 (registry+https://github.com/rust-lang/crates.io-index)",
- "wasmtime-component-util",
- "wasmtime-types",
-]
-
-[[package]]
-name = "wasmtime-jit"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90ff15f426c2378f32ffb6d9b4370e3504231492e93f6968e8b5102c3256bbc4"
-dependencies = [
- "addr2line 0.19.0",
- "anyhow",
- "bincode",
- "cfg-if",
- "cpp_demangle 0.3.5",
- "gimli",
- "log",
- "object 0.30.4",
- "rustc-demangle",
- "rustix 0.37.23",
- "serde",
- "target-lexicon",
- "wasmtime-environ",
- "wasmtime-jit-icache-coherence",
- "wasmtime-runtime",
- "windows-sys",
-]
-
-[[package]]
-name = "wasmtime-jit-debug"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c549e219102426aa1f90bd18e56a3195ed1e696c318abb3f501c1f4924b530ac"
-dependencies = [
- "once_cell",
-]
-
-[[package]]
-name = "wasmtime-jit-icache-coherence"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cf02fedda287a409cff80ad40a7c6c0f0771e99b0cd5e2b79d9cb7ecdc1b2f4"
-dependencies = [
- "cfg-if",
- "libc",
- "windows-sys",
-]
-
-[[package]]
-name = "wasmtime-runtime"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc38c6229a5d3b8a2528eb33eb11d3e7ebf570259c7cd2f01e8668fe783ea443"
-dependencies = [
- "anyhow",
- "cc",
- "cfg-if",
- "encoding_rs",
- "indexmap 1.9.3",
- "libc",
- "log",
- "mach",
- "memfd",
- "memoffset 0.8.0",
- "paste",
- "rand",
- "rustix 0.37.23",
- "sptr",
- "wasmtime-asm-macros",
- "wasmtime-environ",
- "wasmtime-jit-debug",
- "windows-sys",
-]
-
-[[package]]
-name = "wasmtime-types"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "768f6c5e7afc3a02eff2753196741db8e5ac5faf26a1e2204d7341b30a637c6f"
-dependencies = [
- "cranelift-entity",
- "serde",
- "thiserror",
- "wasmparser 0.107.0",
-]
-
-[[package]]
-name = "wasmtime-winch"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2249faeb887b8b7e7b1797c460ac76160654aea3b8d5842093a771d77fc3819"
-dependencies = [
- "anyhow",
- "cranelift-codegen",
- "gimli",
- "object 0.30.4",
- "target-lexicon",
- "wasmparser 0.107.0",
- "wasmtime-cranelift-shared",
- "wasmtime-environ",
- "winch-codegen",
-]
-
-[[package]]
-name = "wasmtime-wit-bindgen"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "84a4a005a6a2d5faa7cd953d389da8ae979cb571fe40edec7769649d8c98d874"
-dependencies = [
- "anyhow",
- "heck",
- "wit-parser 0.8.0",
-]
-
-[[package]]
-name = "wast"
-version = "63.0.0"
-dependencies = [
- "anyhow",
- "leb128",
- "memchr",
- "rayon",
- "unicode-width",
- "wasm-encoder 0.31.1",
- "wasmparser 0.111.0",
- "wat",
-]
-
-[[package]]
-name = "wat"
-version = "1.0.70"
-dependencies = [
- "wast",
-]
-
-[[package]]
-name = "web-sys"
-version = "0.3.64"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b"
-dependencies = [
- "js-sys",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-util"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "winch-codegen"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21de111a36e8f367416862fdf6f10caa411cc07a6e21b614eedbf9388c2a3dc9"
-dependencies = [
- "anyhow",
- "cranelift-codegen",
- "gimli",
- "regalloc2",
- "smallvec",
- "target-lexicon",
- "wasmparser 0.107.0",
- "wasmtime-environ",
-]
-
-[[package]]
-name = "windows-sys"
-version = "0.48.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
-dependencies = [
- "windows-targets",
-]
-
-[[package]]
-name = "windows-targets"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
-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.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
-
-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
-
-[[package]]
-name = "wit-component"
-version = "0.13.2"
-dependencies = [
- "anyhow",
- "bitflags 2.4.0",
- "env_logger",
- "glob",
- "indexmap 2.0.0",
- "log",
- "pretty_assertions",
- "wasm-encoder 0.31.1",
- "wasm-metadata",
- "wasmparser 0.111.0",
- "wasmprinter 0.2.63",
- "wasmtime",
- "wat",
- "wit-parser 0.10.0",
-]
-
-[[package]]
-name = "wit-parser"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6daec9f093dbaea0e94043eeb92ece327bbbe70c86b1f41aca9bbfefd7f050f0"
-dependencies = [
- "anyhow",
- "id-arena",
- "indexmap 1.9.3",
- "log",
- "pulldown-cmark 0.8.0",
- "semver",
- "unicode-xid",
- "url",
-]
-
-[[package]]
-name = "wit-parser"
-version = "0.10.0"
-dependencies = [
- "anyhow",
- "env_logger",
- "id-arena",
- "indexmap 2.0.0",
- "log",
- "pretty_assertions",
- "pulldown-cmark 0.9.3",
- "rayon",
- "semver",
- "unicode-xid",
- "url",
-]
-
-[[package]]
-name = "wit-parser-fuzz"
-version = "0.0.1"
-dependencies = [
- "arbitrary",
- "env_logger",
- "libfuzzer-sys",
- "log",
- "wasmprinter 0.2.63",
- "wit-parser 0.10.0",
-]
-
-[[package]]
-name = "wit-smith"
-version = "0.1.9"
-dependencies = [
- "arbitrary",
- "clap 4.3.23",
- "indexmap 2.0.0",
- "log",
- "semver",
- "wit-component",
- "wit-parser 0.10.0",
-]
-
-[[package]]
-name = "yansi"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec"
diff --git a/nixpkgs/pkgs/tools/misc/wasm-tools/default.nix b/nixpkgs/pkgs/tools/misc/wasm-tools/default.nix
index 81e4f70065a6..057413c54ce9 100644
--- a/nixpkgs/pkgs/tools/misc/wasm-tools/default.nix
+++ b/nixpkgs/pkgs/tools/misc/wasm-tools/default.nix
@@ -5,23 +5,18 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wasm-tools";
-  version = "1.0.39";
+  version = "1.0.40";
 
   src = fetchFromGitHub {
     owner = "bytecodealliance";
     repo = pname;
     rev = "${pname}-${version}";
-    hash = "sha256-NohA/2yzsEtMECvnntPyWvhEdVL63elmw0B+4Med6OE=";
+    hash = "sha256-ZDQPIEDroi+YgEtQ9IsVvFSErfeyDf4KFuybEbGu91E=";
     fetchSubmodules = true;
   };
 
-  cargoLock.lockFile = ./Cargo.lock;
-  postPatch = ''
-    ln -sf ${./Cargo.lock} Cargo.lock
-  '';
-
+  cargoHash = "sha256-Nynn7pxQyqfMAMGmp3eZFg7y5nj7UPyK6FLbVbN07AA=";
   cargoBuildFlags = [ "--package" "wasm-tools" ];
-
   cargoTestFlags = [ "--all" ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/misc/xcp/default.nix b/nixpkgs/pkgs/tools/misc/xcp/default.nix
index b8e93c3f7b67..9b06c11890dc 100644
--- a/nixpkgs/pkgs/tools/misc/xcp/default.nix
+++ b/nixpkgs/pkgs/tools/misc/xcp/default.nix
@@ -2,19 +2,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "xcp";
-  version = "0.10.0";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = "tarka";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-DrB7eVo7nFsp2jGVygbBvj7zOztJ8jDkLODRFfxXhjY=";
+    sha256 = "sha256-QCoH8N6HDpXQXWchccGIG/pbDx9qZ8YKM6VP6lxoYzU=";
   };
 
   # no such file or directory errors
   doCheck = false;
 
-  cargoHash = "sha256-O16aY+s27LBMcbefz4ug5+EuGAAiNsD7D0nv5KPg+Us=";
+  cargoHash = "sha256-F51BHBUaQx1xg0Y2eVnXGRCMykbzk3q5IyJ528JyA5o=";
 
   meta = with lib; {
     description = "An extended cp(1)";
diff --git a/nixpkgs/pkgs/tools/misc/xdaliclock/default.nix b/nixpkgs/pkgs/tools/misc/xdaliclock/default.nix
index 0f1769fc8023..73e648cf83c5 100644
--- a/nixpkgs/pkgs/tools/misc/xdaliclock/default.nix
+++ b/nixpkgs/pkgs/tools/misc/xdaliclock/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "xdaliclock";
-  version = "2.47";
+  version = "2.48";
 
   src = fetchurl {
     url = "https://www.jwz.org/xdaliclock/${pname}-${version}.tar.gz";
-    hash = "sha256-1Jkv9iulvyY+b5KryDr8s+v8LU95hcVi7PJQsL1rUL4=";
+    hash = "sha256-BZiqjTSSAgvT/56OJDcKh4pDP9uqVhR5cCx89H+5FLQ=";
   };
 
   # Note: don't change this to set sourceRoot, or updateAutotoolsGnuConfigScriptsHook
diff --git a/nixpkgs/pkgs/tools/misc/zellij/default.nix b/nixpkgs/pkgs/tools/misc/zellij/default.nix
index 6456dfb804de..cc69b4550ad0 100644
--- a/nixpkgs/pkgs/tools/misc/zellij/default.nix
+++ b/nixpkgs/pkgs/tools/misc/zellij/default.nix
@@ -15,16 +15,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "zellij";
-  version = "0.37.2";
+  version = "0.38.1";
 
   src = fetchFromGitHub {
     owner = "zellij-org";
     repo = "zellij";
     rev = "v${version}";
-    sha256 = "sha256-YceH3qW0B+h7UvI84PIlfwJXWi4jyxSXIYDsZFrpc1c=";
+    hash = "sha256-3khMo5qMG0qonMnPvuErVYFohUrZLAkaxKZzkMHou8E=";
   };
 
-  cargoSha256 = "sha256-uD8z8oQ/z2zk5/MSohgcg5N5984hJhKyPz8dQQUnWL8=";
+  cargoHash = "sha256-d4UNkbp/ryN/VbK8VO8oYvZ1j6qHKeLRSDqgdT+zIeU=";
 
   nativeBuildInputs = [
     mandown
diff --git a/nixpkgs/pkgs/tools/networking/bully/default.nix b/nixpkgs/pkgs/tools/networking/bully/default.nix
index c82971d8217a..55ff196154e3 100644
--- a/nixpkgs/pkgs/tools/networking/bully/default.nix
+++ b/nixpkgs/pkgs/tools/networking/bully/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  sourceRoot = "./${src.name}/src";
+  sourceRoot = "${src.name}/src";
 
   installPhase = ''
     install -Dm555 -t $out/bin bully
diff --git a/nixpkgs/pkgs/tools/networking/clash-meta/default.nix b/nixpkgs/pkgs/tools/networking/clash-meta/default.nix
index c7275db6c0a6..5c3f4c976b41 100644
--- a/nixpkgs/pkgs/tools/networking/clash-meta/default.nix
+++ b/nixpkgs/pkgs/tools/networking/clash-meta/default.nix
@@ -4,16 +4,16 @@
 }:
 buildGoModule rec {
   pname = "clash-meta";
-  version = "1.15.0";
+  version = "1.15.1";
 
   src = fetchFromGitHub {
     owner = "MetaCubeX";
     repo = "Clash.Meta";
     rev = "v${version}";
-    hash = "sha256-QXNMplVy4cDRbUUDwidto7jxgjStX5PmCLdAIW7Edn8=";
+    hash = "sha256-gOUG+XtLfkgnbTj1yUun50pevOh+aPXfIlof5/U2ud8=";
   };
 
-  vendorHash = "sha256-lMeJ3z/iTHIbJI5kTzkQjNPMv5tGMJK/+PM36BUlpjE=";
+  vendorHash = "sha256-My/fwa8BgaJcSGKcyyzUExVE0M2fk7rMZtOBW7V5edQ=";
 
   # Do not build testing suit
   excludedPackages = [ "./test" ];
diff --git a/nixpkgs/pkgs/tools/networking/containerlab/default.nix b/nixpkgs/pkgs/tools/networking/containerlab/default.nix
index 51879351fd81..ca9b54c5135a 100644
--- a/nixpkgs/pkgs/tools/networking/containerlab/default.nix
+++ b/nixpkgs/pkgs/tools/networking/containerlab/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "containerlab";
-  version = "0.44.2";
+  version = "0.44.3";
 
   src = fetchFromGitHub {
     owner = "srl-labs";
     repo = "containerlab";
     rev = "v${version}";
-    hash = "sha256-W05FPyBAKnndrELXytrXzpfTcEtq3Q2RDvOQkKMpvwI=";
+    hash = "sha256-USQULAT1T40eyQHpU3YIdwl2PDG1IHm9ferXKsNVyLg=";
   };
 
   nativeBuildInputs = [ installShellFiles ];
diff --git a/nixpkgs/pkgs/tools/networking/dd-agent/datadog-agent.nix b/nixpkgs/pkgs/tools/networking/dd-agent/datadog-agent.nix
index 1fa275ab2b53..1968d866c91f 100644
--- a/nixpkgs/pkgs/tools/networking/dd-agent/datadog-agent.nix
+++ b/nixpkgs/pkgs/tools/networking/dd-agent/datadog-agent.nix
@@ -1,7 +1,7 @@
 { lib
 , stdenv
 , cmake
-, buildGo118Module
+, buildGoModule
 , makeWrapper
 , fetchFromGitHub
 , pythonPackages
@@ -35,7 +35,7 @@ let
     cmakeFlags = ["-DBUILD_DEMO=OFF" "-DDISABLE_PYTHON2=ON"];
   };
 
-in buildGo118Module rec {
+in buildGoModule rec {
   pname = "datadog-agent";
   inherit src version;
 
diff --git a/nixpkgs/pkgs/tools/networking/dnsperf/default.nix b/nixpkgs/pkgs/tools/networking/dnsperf/default.nix
index 2a89c46f0ab1..7c8913a7f430 100644
--- a/nixpkgs/pkgs/tools/networking/dnsperf/default.nix
+++ b/nixpkgs/pkgs/tools/networking/dnsperf/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dnsperf";
-  version = "2.13.0";
+  version = "2.13.1";
 
   src = fetchFromGitHub {
     owner = "DNS-OARC";
     repo = "dnsperf";
     rev = "v${version}";
-    sha256 = "sha256-ijbJ3ttSLO3UL8TBdayJeYcsBMisv4vICQW3+ZhVsuM=";
+    hash = "sha256-iNTuLcN9bsBPyXZ8SL96moFaI2pTcEhFey8+4xo9iyk=";
   };
 
   nativeBuildInputs = [
@@ -37,8 +37,10 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Tools for DNS benchmaring";
     homepage = "https://www.dns-oarc.net/tools/dnsperf";
+    changelog = "https://github.com/DNS-OARC/dnsperf/releases/tag/v${version}";
     license = licenses.isc;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ vcunat ];
+    mainProgram = "dnsperf";
+    maintainers = with maintainers; [ vcunat mfrw ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/easyrsa/default.nix b/nixpkgs/pkgs/tools/networking/easyrsa/default.nix
index 8900681443be..8790d5ada935 100644
--- a/nixpkgs/pkgs/tools/networking/easyrsa/default.nix
+++ b/nixpkgs/pkgs/tools/networking/easyrsa/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "easyrsa";
-  version = "3.1.5";
+  version = "3.1.6";
 
   src = fetchFromGitHub {
     owner = "OpenVPN";
     repo = "easy-rsa";
     rev = "v${version}";
-    sha256 = "sha256-GOgwGCsutg4WsBjs1f9jiTS2fvmVMyWCoTw+J/7iZG0=";
+    sha256 = "sha256-VbL2QXc4IaTe6u17nhByIk+SEsKLhl6sk85E5moGfjs=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/networking/frp/default.nix b/nixpkgs/pkgs/tools/networking/frp/default.nix
index 078d80af10eb..519aedad558e 100644
--- a/nixpkgs/pkgs/tools/networking/frp/default.nix
+++ b/nixpkgs/pkgs/tools/networking/frp/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "frp";
-  version = "0.51.2";
+  version = "0.51.3";
 
   src = fetchFromGitHub {
     owner = "fatedier";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-uiF27qGHwAg05o9thCxIf6Z2xhMnKzhDgMKTuS6IJ8A=";
+    sha256 = "sha256-ijcYSuB91I9lD4qx6ohVFDQgTE0+FTQ5Hr1heNwKyUo=";
   };
 
-  vendorHash = "sha256-sqlBgEfIWuDnGsepSZtrgxmG/DoP+Hc4c3nOpo8S/Ks=";
+  vendorHash = "sha256-DFQ59E24LR5/qodtge0EsqajvrjPN0otpxGB8JQ0ERw=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/networking/getmail6/default.nix b/nixpkgs/pkgs/tools/networking/getmail6/default.nix
index 2c52f055575a..cf3d5402898e 100644
--- a/nixpkgs/pkgs/tools/networking/getmail6/default.nix
+++ b/nixpkgs/pkgs/tools/networking/getmail6/default.nix
@@ -5,13 +5,15 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "getmail6";
-  version = "6.18.12";
+  version = "6.18.13";
+
+  format = "setuptools";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-b+zDoiOD80BTP5VDpW/swur8zJOqYEWe05e/ZupZjyk=";
+    hash = "sha256-cyX+3LsXqBpAvaOPVpT4EuPzqJm9kki1uNTG+7k3Q28=";
   };
 
   # needs a Docker setup
diff --git a/nixpkgs/pkgs/tools/networking/grpc_cli/default.nix b/nixpkgs/pkgs/tools/networking/grpc_cli/default.nix
index 1d22b6cd17bb..9cd4d34876cb 100644
--- a/nixpkgs/pkgs/tools/networking/grpc_cli/default.nix
+++ b/nixpkgs/pkgs/tools/networking/grpc_cli/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "grpc_cli";
-  version = "1.56.2";
+  version = "1.57.0";
   src = fetchFromGitHub {
     owner = "grpc";
     repo = "grpc";
     rev = "v${version}";
-    hash = "sha256-yjEaVfyfOlH/GPZz06lKvdds88VZUygPe1OxueMDnJA=";
+    hash = "sha256-ZPhPi4ODAAohCySVKeypaDID4ZUXvnfidOGK5EMXvh4=";
     fetchSubmodules = true;
   };
   nativeBuildInputs = [ automake cmake autoconf ];
diff --git a/nixpkgs/pkgs/tools/networking/haproxy/default.nix b/nixpkgs/pkgs/tools/networking/haproxy/default.nix
index b7c39d83d896..6ac8dfb04ef6 100644
--- a/nixpkgs/pkgs/tools/networking/haproxy/default.nix
+++ b/nixpkgs/pkgs/tools/networking/haproxy/default.nix
@@ -18,11 +18,11 @@ assert usePcre -> pcre != null;
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "haproxy";
-  version = "2.8.1";
+  version = "2.8.2";
 
   src = fetchurl {
     url = "https://www.haproxy.org/download/${lib.versions.majorMinor finalAttrs.version}/src/haproxy-${finalAttrs.version}.tar.gz";
-    hash = "sha256-SFVS/NnV1fQarQRvEx/Ap+hJvvJaNJoEB1CvDG/FaAc=";
+    hash = "sha256-aY1pBtFwlGqGl2mWTleBa6PaOt9h/3XomXKxN/RljbA=";
   };
 
   buildInputs = [ openssl zlib libxcrypt ]
@@ -76,5 +76,6 @@ stdenv.mkDerivation (finalAttrs: {
     '';
     maintainers = with lib.maintainers; [ ];
     platforms = with lib.platforms; linux ++ darwin;
+    mainProgram = "haproxy";
   };
 })
diff --git a/nixpkgs/pkgs/tools/networking/httplz/default.nix b/nixpkgs/pkgs/tools/networking/httplz/default.nix
index bc2733bfb982..2a0f665f863a 100644
--- a/nixpkgs/pkgs/tools/networking/httplz/default.nix
+++ b/nixpkgs/pkgs/tools/networking/httplz/default.nix
@@ -12,15 +12,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "httplz";
-  version = "1.13.0";
+  version = "1.13.2";
 
   src = fetchCrate {
     inherit version;
     pname = "https";
-    hash = "sha256-sTkj2UkUENpezPFAzyDUz6rC4F0G864uLLYOU9fyXjo=";
+    hash = "sha256-uxEMgSrcxMZD/3GQuH9S/oYtMUPzgMR61ZzLcb65zXU=";
   };
 
-  cargoHash = "sha256-omjm+NSny1NLUj9MCeGU6XgrVRAxMJzTbvIyfmWgoCU=";
+  cargoHash = "sha256-8cH8QrnkfPF0Di7+Ns/P/8cFe0jej/v7m4fkkfTFdvs=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/nixpkgs/pkgs/tools/networking/ipinfo/default.nix b/nixpkgs/pkgs/tools/networking/ipinfo/default.nix
index a05372a1577a..5c32868d43cf 100644
--- a/nixpkgs/pkgs/tools/networking/ipinfo/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ipinfo/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "ipinfo";
-  version = "2.10.1";
+  version = "3.0.1";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = "cli";
     rev = "refs/tags/${pname}-${version}";
-    hash = "sha256-/CW+CmtKc96tVEh5cB6x+/Hb4WnbVi+3AZ0CEao0NE4=";
+    hash = "sha256-b6Rh5TJHqcdexZ4AHY+4jQsCMdn69J3MTbmgKXEaACw=";
   };
 
-  vendorSha256 = null;
+  vendorHash = null;
 
   # Tests require network access
   doCheck = false;
diff --git a/nixpkgs/pkgs/tools/networking/juicity/default.nix b/nixpkgs/pkgs/tools/networking/juicity/default.nix
index 53e12094fa7a..c28060d403ee 100644
--- a/nixpkgs/pkgs/tools/networking/juicity/default.nix
+++ b/nixpkgs/pkgs/tools/networking/juicity/default.nix
@@ -1,19 +1,19 @@
 { lib
 , fetchFromGitHub
-, buildGoModule
+, buildGo121Module
 }:
-buildGoModule rec {
+buildGo121Module rec {
   pname = "juicity";
-  version = "0.1.3";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
     owner = "juicity";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-aTg2Xo2+3uxLTJ3MRC46FR/4qBs28IpT6K3KMb8i16s=";
+    hash = "sha256-+P7MFNhWI4aqCtcJhAw3/RtfOkh+b3v2v69pIOznc/8=";
   };
 
-  vendorHash = "sha256-xTpT3Qjg2kAJynLaQLLMmoL/SzpguK2YrlWsq/NYrX4=";
+  vendorHash = "sha256-KrkEqvgHyAoNAX93SE9yDuik60CvPeP+w0Xehi7lgi0=";
 
   proxyVendor = true;
 
diff --git a/nixpkgs/pkgs/tools/networking/lxi-tools/default.nix b/nixpkgs/pkgs/tools/networking/lxi-tools/default.nix
index ddf2147cea9f..6f94988c2c58 100644
--- a/nixpkgs/pkgs/tools/networking/lxi-tools/default.nix
+++ b/nixpkgs/pkgs/tools/networking/lxi-tools/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lxi-tools";
-  version = "2.6";
+  version = "2.7";
 
   src = fetchFromGitHub {
     owner = "lxi-tools";
     repo = "lxi-tools";
     rev = "v${version}";
-    sha256 = "sha256-THtMSiGlBes9OujFEZL88Twx+etYiQRJSk9DFYeGFhY=";
+    sha256 = "sha256-69B3wW4lg6GxSpEKhuFYKTuAyd+QYb4WNbNVdZnRUt8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/networking/mockoon/default.nix b/nixpkgs/pkgs/tools/networking/mockoon/default.nix
index df151764501b..e98b4ac7df44 100644
--- a/nixpkgs/pkgs/tools/networking/mockoon/default.nix
+++ b/nixpkgs/pkgs/tools/networking/mockoon/default.nix
@@ -5,11 +5,11 @@
 
 let
   pname = "mockoon";
-  version = "3.0.0";
+  version = "4.1.0";
 
   src = fetchurl {
     url = "https://github.com/mockoon/mockoon/releases/download/v${version}/mockoon-${version}.AppImage";
-    hash = "sha256-YGcD/8h21fUoBEAcBVI5jo0UMCKdVRdC1zxDIrHjU+8=";
+    hash = "sha256-7wf7RFyYQN0pGcfKRzYOxs0qNi27JuX/nXUzT/zMSY4=";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/nixpkgs/pkgs/tools/networking/mu/default.nix b/nixpkgs/pkgs/tools/networking/mu/default.nix
index 4ed161ba355f..06083f8e0fae 100644
--- a/nixpkgs/pkgs/tools/networking/mu/default.nix
+++ b/nixpkgs/pkgs/tools/networking/mu/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mu";
-  version = "1.10.6";
+  version = "1.10.7";
 
   src = fetchFromGitHub {
     owner = "djcb";
     repo = "mu";
     rev = "v${version}";
-    hash = "sha256-AGHPczGh4z0bla034FGSTmaRgMIfBNYFBUPevJ9LHqI=";
+    hash = "sha256-x1TsyTOK5U6/Y3QInm+XQ7T32X49iwa+4UnaHdiyqCI=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/networking/netbird/default.nix b/nixpkgs/pkgs/tools/networking/netbird/default.nix
index e7b1727c1603..97a53e882c70 100644
--- a/nixpkgs/pkgs/tools/networking/netbird/default.nix
+++ b/nixpkgs/pkgs/tools/networking/netbird/default.nix
@@ -30,13 +30,13 @@ let
 in
 buildGoModule rec {
   pname = "netbird";
-  version = "0.22.6";
+  version = "0.22.7";
 
   src = fetchFromGitHub {
     owner = "netbirdio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-/7iJbl9MFe5D9g+4a8nFavZG3jXIiEgKU3toGpx0hyM=";
+    sha256 = "sha256-2Xvpalizazhkp8aYPYY5Er9I6dkL8AKnrjpIU44o2WM=";
   };
 
   vendorHash = "sha256-CwozOBAPFSsa1XzDOHBgmFSwGiNekWT8t7KGR2KOOX4=";
diff --git a/nixpkgs/pkgs/tools/networking/networkmanager/dmenu/default.nix b/nixpkgs/pkgs/tools/networking/networkmanager/dmenu/default.nix
index 2d4656e69b70..8bf9af1ffbf9 100644
--- a/nixpkgs/pkgs/tools/networking/networkmanager/dmenu/default.nix
+++ b/nixpkgs/pkgs/tools/networking/networkmanager/dmenu/default.nix
@@ -4,13 +4,13 @@
 let inherit (python3Packages) python pygobject3;
 in stdenv.mkDerivation rec {
   pname = "networkmanager_dmenu";
-  version = "2.3.0";
+  version = "2.3.1";
 
   src = fetchFromGitHub {
     owner = "firecat53";
     repo = "networkmanager-dmenu";
     rev = "v${version}";
-    sha256 = "sha256-cJeDYk2BQv2ZWGC96I7lXFFYgseWj68ZfvE7ATW46U0=";
+    sha256 = "sha256-RbJE6JCElctBY5HDJa6SIJhm8g9BugncLF5kmambPPc=";
   };
 
   nativeBuildInputs = [ gobject-introspection ];
diff --git a/nixpkgs/pkgs/tools/networking/ntpd-rs/default.nix b/nixpkgs/pkgs/tools/networking/ntpd-rs/default.nix
new file mode 100644
index 000000000000..0fa44cb418c7
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/ntpd-rs/default.nix
@@ -0,0 +1,45 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "ntpd-rs";
+  version = "0.3.7";
+
+  src = fetchFromGitHub {
+    owner = "pendulum-project";
+    repo = "ntpd-rs";
+    rev = "v${version}";
+    hash = "sha256-AUCzsveG9U+KxYO/4LGmyCPkR+w9pGDA/vTzMAGiVuI=";
+  };
+
+  cargoHash = "sha256-6FUVkr3uock43ZBHuMEVIZ5F8Oh8wMifh2EokMWv4hU=";
+
+  checkFlags = [
+    # doesn't find the testca
+    "--skip=keyexchange::tests::key_exchange_roundtrip"
+    # seems flaky
+    "--skip=algorithm::kalman::peer::tests::test_offset_steering_and_measurements"
+    # needs networking
+    "--skip=hwtimestamp::tests::get_hwtimestamp"
+  ];
+
+  postInstall = ''
+    install -vDt $out/lib/systemd/system pkg/common/ntpd-rs.service
+
+    for testprog in demobilize-server rate-limit-server nts-ke nts-ke-server peer-state simple-daemon; do
+      moveToOutput bin/$testprog "$tests"
+    done
+  '';
+
+  outputs = [ "out" "tests" ];
+
+  meta = with lib; {
+    description = "A full-featured implementation of the Network Time Protocol";
+    homepage = "https://tweedegolf.nl/en/pendulum";
+    changelog = "https://github.com/pendulum-project/ntpd-rs/blob/v${version}/CHANGELOG.md";
+    license = with licenses; [ mit /* or */ asl20 ];
+    maintainers = with maintainers; [ fpletz ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/ocserv/default.nix b/nixpkgs/pkgs/tools/networking/ocserv/default.nix
index ec1d3acea005..eb1795e73546 100644
--- a/nixpkgs/pkgs/tools/networking/ocserv/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ocserv/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ocserv";
-  version = "1.2.0";
+  version = "1.2.1";
 
   src = fetchFromGitLab {
     owner = "openconnect";
     repo = "ocserv";
     rev = version;
-    sha256 = "sha256-EwjP4HKJEPMnn2tnJG7tPgHc49iQQm+V1mKx8CLOSkw=";
+    sha256 = "sha256-mYf0cdWIxRSDGvszlFDex2SU6TtvodD1sXcUZOOcYd0=";
   };
 
   nativeBuildInputs = [ autoreconfHook gperf pkg-config ronn ];
diff --git a/nixpkgs/pkgs/tools/networking/oneshot/default.nix b/nixpkgs/pkgs/tools/networking/oneshot/default.nix
index 006fd3b259a8..3ecca675e18c 100644
--- a/nixpkgs/pkgs/tools/networking/oneshot/default.nix
+++ b/nixpkgs/pkgs/tools/networking/oneshot/default.nix
@@ -1,26 +1,50 @@
-{ lib, fetchFromGitHub, buildGoModule }:
+{ lib, fetchFromGitHub, buildGoModule, testers, oneshot }:
 
 buildGoModule rec {
   pname = "oneshot";
-  version = "1.5.1";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
-    owner = "raphaelreyna";
+    owner = "forestnode-io";
     repo = "oneshot";
     rev = "v${version}";
-    sha256 = "sha256-5NCGKgmioTOHGJEWMIEsZlA+072XXL9L8KbEH6+caHc=";
+    hash = "sha256-QReh8wdFeiCAv+XMz4cADNn9QcxlvewFJJuJ+OH7Lgc=";
   };
 
-  vendorSha256 = "sha256-rL/NWIIggvngTrdTDm1g1uH3vC55JF3cWllPc6Yb5jc=";
+  vendorHash = "sha256-z6eOPugSwWEK02lgRu5Oo8LzjXnJlAtQvkzdevjBTVs=";
 
-  doCheck = false;
+  subPackages = [ "cmd" ];
 
-  subPackages = [ "." ];
+  GOWORK = "off";
+
+  modRoot = "v2";
+
+  ldflags = [
+    "-s"
+    "-w"
+    "-extldflags=-static"
+    "-X github.com/forestnode-io/oneshot/v2/pkg/version.Version=${version}"
+    "-X github.com/forestnode-io/oneshot/v2/pkg/version.APIVersion=v1.0.0"
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -D -m 555 -T $GOPATH/bin/cmd $out/bin/oneshot
+
+    runHook postInstall
+  '';
+
+  passthru.tests.version = testers.testVersion {
+    package = oneshot;
+    command = "oneshot version";
+  };
 
   meta = with lib; {
-    description = "A first-come-first-serve single-fire HTTP server";
-    homepage = "https://github.com/raphaelreyna/oneshot";
+    description = "A first-come first-served single-fire HTTP server";
+    homepage = "https://www.oneshot.uno/";
     license = licenses.mit;
     maintainers = with maintainers; [ milibopp ];
+    mainProgram = "oneshot";
   };
 }
diff --git a/nixpkgs/pkgs/tools/networking/ookla-speedtest/default.nix b/nixpkgs/pkgs/tools/networking/ookla-speedtest/default.nix
index d889414bc118..b08769b6ca1d 100644
--- a/nixpkgs/pkgs/tools/networking/ookla-speedtest/default.nix
+++ b/nixpkgs/pkgs/tools/networking/ookla-speedtest/default.nix
@@ -34,9 +34,7 @@ stdenv.mkDerivation rec {
 
   src = srcs.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
-  setSourceRoot = ''
-    sourceRoot=$PWD
-  '';
+  sourceRoot = ".";
 
   dontBuild = true;
   dontConfigure = true;
diff --git a/nixpkgs/pkgs/tools/networking/openssh/common.nix b/nixpkgs/pkgs/tools/networking/openssh/common.nix
index d29f45e8af2f..2b6ea743fec1 100644
--- a/nixpkgs/pkgs/tools/networking/openssh/common.nix
+++ b/nixpkgs/pkgs/tools/networking/openssh/common.nix
@@ -28,6 +28,7 @@
 , hostname
 , nixosTests
 , withFIDO ? stdenv.hostPlatform.isUnix && !stdenv.hostPlatform.isMusl
+, withPAM ? stdenv.hostPlatform.isLinux
 , linkOpenssl ? true
 }:
 
@@ -71,7 +72,7 @@ stdenv.mkDerivation {
   buildInputs = [ zlib openssl libedit ]
     ++ lib.optional withFIDO libfido2
     ++ lib.optional withKerberos libkrb5
-    ++ lib.optional stdenv.isLinux pam;
+    ++ lib.optional withPAM pam;
 
   preConfigure = ''
     # Setting LD causes `configure' and `make' to disagree about which linker
@@ -88,7 +89,7 @@ stdenv.mkDerivation {
     "--with-mantype=man"
     "--with-libedit=yes"
     "--disable-strip"
-    (if stdenv.isLinux then "--with-pam" else "--without-pam")
+    (lib.withFeature withPAM "pam")
   ] ++ lib.optional (etcDir != null) "--sysconfdir=${etcDir}"
     ++ lib.optional withFIDO "--with-security-key-builtin=yes"
     ++ lib.optional withKerberos (assert libkrb5 != null; "--with-kerberos5=${libkrb5}")
diff --git a/nixpkgs/pkgs/tools/networking/s5cmd/default.nix b/nixpkgs/pkgs/tools/networking/s5cmd/default.nix
index 71d1cf51fae9..cdfa2cee6033 100644
--- a/nixpkgs/pkgs/tools/networking/s5cmd/default.nix
+++ b/nixpkgs/pkgs/tools/networking/s5cmd/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "s5cmd";
-  version = "2.1.0";
+  version = "2.2.0";
 
   src = fetchFromGitHub {
     owner = "peak";
     repo = "s5cmd";
     rev = "v${version}";
-    hash = "sha256-uH6KE3sTPc2FfqOxr6cB3A8DOq+VjGsJ3KoK8riOKXk=";
+    hash = "sha256-4Jx9hgjj+rthiyB7eKXNcbBv9oJWfwHanPO7bZ4J/K0=";
   };
 
-  vendorSha256 = null;
+  vendorHash = null;
 
   # Skip e2e tests requiring network access
   excludedPackages = [ "./e2e" ];
diff --git a/nixpkgs/pkgs/tools/networking/shadowsocks-rust/default.nix b/nixpkgs/pkgs/tools/networking/shadowsocks-rust/default.nix
index cf22d4f002fe..cef81e1cbb57 100644
--- a/nixpkgs/pkgs/tools/networking/shadowsocks-rust/default.nix
+++ b/nixpkgs/pkgs/tools/networking/shadowsocks-rust/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "shadowsocks-rust";
-  version = "1.15.4";
+  version = "1.16.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "shadowsocks";
     repo = pname;
-    hash = "sha256-Tdh6lGk93hGuR+L2cytVoKYfRHrmuNo9OtKqQaeCMx0=";
+    hash = "sha256-kJqJpYjgN49qV/JLfUfmd/f9UjhiM1HOwSONELl2bOk=";
   };
 
-  cargoHash = "sha256-dtHr+zsjpQe+iNwlj0sRxZRsgl1nxflXhhV1fTMCiFY=";
+  cargoHash = "sha256-HzvNcESNalZp7+k9WH+ohARq0na8Q4NUctqrCOu6gwI=";
 
   nativeBuildInputs = lib.optionals stdenv.isLinux [ pkg-config ];
 
@@ -35,13 +35,18 @@ rustPlatform.buildRustPackage rec {
   checkFlags = [
     "--skip=http_proxy"
     "--skip=tcp_tunnel"
+    "--skip=tcprelay"
     "--skip=udp_tunnel"
     "--skip=udp_relay"
     "--skip=socks4_relay_connect"
     "--skip=socks5_relay_aead"
     "--skip=socks5_relay_stream"
+    "--skip=trust_dns_resolver"
   ];
 
+  # timeouts in sandbox
+  doCheck = false;
+
   meta = with lib; {
     description = "A Rust port of Shadowsocks";
     homepage = "https://github.com/shadowsocks/shadowsocks-rust";
diff --git a/nixpkgs/pkgs/tools/networking/sing-box/default.nix b/nixpkgs/pkgs/tools/networking/sing-box/default.nix
index 3acc4acc64ef..db1541eac1cd 100644
--- a/nixpkgs/pkgs/tools/networking/sing-box/default.nix
+++ b/nixpkgs/pkgs/tools/networking/sing-box/default.nix
@@ -11,16 +11,16 @@
 
 buildGoModule rec {
   pname = "sing-box";
-  version = "1.3.6";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "SagerNet";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-iVoouUEZ3dMv3sD7eljltsWrdhAn9L+YtG1bbB5YuPM=";
+    hash = "sha256-i6Cpb4NQNsyIrMOihWYdR37BkSouSCWi3nxMnbODnZU=";
   };
 
-  vendorHash = "sha256-4Rr/ILnDLJ4x0uSDOzTX2cjT3kaIApLOCo2NEOzGoyA=";
+  vendorHash = "sha256-6Mx8kdZL7EguQoh1upuu6wGZckczDoGmRjOFCpv756s=";
 
   tags = [
     "with_quic"
diff --git a/nixpkgs/pkgs/tools/networking/slirp4netns/default.nix b/nixpkgs/pkgs/tools/networking/slirp4netns/default.nix
index 62c4e8c76a66..828e3e1ad0c5 100644
--- a/nixpkgs/pkgs/tools/networking/slirp4netns/default.nix
+++ b/nixpkgs/pkgs/tools/networking/slirp4netns/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "slirp4netns";
-  version = "1.2.0";
+  version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "rootless-containers";
     repo = "slirp4netns";
     rev = "v${version}";
-    sha256 = "sha256-wVisE4YAK52yfeM2itnBqCmhRKlrKRs0NEppQzZPok8=";
+    sha256 = "sha256-Lq3MMIPPEo1yJZ/xE3m9Y/V+cJl17IRkTBVjnr/avHw=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/nixpkgs/pkgs/tools/networking/smartdns/default.nix b/nixpkgs/pkgs/tools/networking/smartdns/default.nix
index a0d5e21e50e4..79b089e8e16a 100644
--- a/nixpkgs/pkgs/tools/networking/smartdns/default.nix
+++ b/nixpkgs/pkgs/tools/networking/smartdns/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "smartdns";
-  version = "42";
+  version = "43";
 
   src = fetchFromGitHub {
     owner = "pymumu";
     repo = pname;
     rev = "Release${version}";
-    hash = "sha256-FVHOjW5SEShxTPPd4IuEfPV6vvqr0RepV976eJmxqwM=";
+    hash = "sha256-gwbyP2duUvZafMclPwP4uZh7A7OzAvSyqjl6Eg1N6Gg=";
   };
 
   buildInputs = [ openssl ];
diff --git a/nixpkgs/pkgs/tools/networking/speedtest-go/default.nix b/nixpkgs/pkgs/tools/networking/speedtest-go/default.nix
index 680f81dadacc..ead27348c5c6 100644
--- a/nixpkgs/pkgs/tools/networking/speedtest-go/default.nix
+++ b/nixpkgs/pkgs/tools/networking/speedtest-go/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "speedtest-go";
-  version = "1.6.3";
+  version = "1.6.5";
 
   src = fetchFromGitHub {
     owner = "showwin";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-xZq7wiD0H6W7BeOQoTkWVmFM1dV24clJUibNaW0lLwk=";
+    hash = "sha256-nuZKYGumxSzhdbrMQzady1ja3aozzTyOx9cfRTin08w=";
   };
 
   vendorHash = "sha256-wQqAX7YuxxTiMWmV9LRoXunGMMzs12UyHbf4VvbQF1E=";
diff --git a/nixpkgs/pkgs/tools/networking/ssl-proxy/default.nix b/nixpkgs/pkgs/tools/networking/ssl-proxy/default.nix
new file mode 100644
index 000000000000..1aac650885b6
--- /dev/null
+++ b/nixpkgs/pkgs/tools/networking/ssl-proxy/default.nix
@@ -0,0 +1,31 @@
+{ lib, buildGo118Module, fetchFromGitHub }:
+
+buildGo118Module rec {
+  pname = "ssl-proxy";
+  version = "0.2.7";
+
+  src = fetchFromGitHub {
+    owner = "suyashkumar";
+    repo = "ssl-proxy";
+    rev = "v${version}";
+    hash = "sha256-c9BLdDlkrg1z1QrO+vEAVyPtrV/nQcYlGXFmwfAOSpQ=";
+  };
+
+  vendorHash = "sha256-310K9ZSxy/OQ4HYFCcHQaj4NQwzATrOZ2YkhiSkhY5I=";
+
+  checkTarget = "test";
+
+  meta = with lib; {
+    homepage = "https://github.com/suyashkumar/ssl-proxy";
+    description = "Simple single-command SSL reverse proxy with autogenerated certificates (LetsEncrypt, self-signed)";
+    longDescription = ''
+      A handy and simple way to add SSL to your thing running on a VM--be it your personal jupyter
+      notebook or your team jenkins instance. ssl-proxy autogenerates SSL certs and proxies
+      HTTPS traffic to an existing HTTP server in a single command.
+    '';
+    license = licenses.mit;
+    mainProgram = "ssl-proxy";
+    maintainers = [ maintainers.konst-aa ];
+    platforms = platforms.linux ++ platforms.darwin ++ platforms.windows ;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/networking/subnetcalc/default.nix b/nixpkgs/pkgs/tools/networking/subnetcalc/default.nix
index ba8b46d486b6..b5aa064f7390 100644
--- a/nixpkgs/pkgs/tools/networking/subnetcalc/default.nix
+++ b/nixpkgs/pkgs/tools/networking/subnetcalc/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "subnetcalc";
-  version = "2.4.21";
+  version = "2.4.22";
 
   src = fetchFromGitHub {
     owner = "dreibh";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "sha256-cFlNx59PaI5GvbEKUplNEq5HVCNt40ZJUvMj2UIbe2A=";
+    sha256 = "sha256-5sDEMS4RgHdGQZAT2MVF/Ls0KXwdKzX+05uQpHhCZn8=";
   };
 
   nativeBuildInputs = [ cmake ninja ];
diff --git a/nixpkgs/pkgs/tools/networking/traceroute/default.nix b/nixpkgs/pkgs/tools/networking/traceroute/default.nix
index 9d092aac560c..c0171ea5880d 100644
--- a/nixpkgs/pkgs/tools/networking/traceroute/default.nix
+++ b/nixpkgs/pkgs/tools/networking/traceroute/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "traceroute";
-  version = "2.1.2";
+  version = "2.1.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/traceroute/${pname}-${version}.tar.gz";
-    sha256 = "sha256-UHwmjyl3tOIYznPn6+1Fug2XCoykmV3Zy7H/6OmbWx8=";
+    sha256 = "sha256-BevHq6KKkQD5u65Uzuy/dcgsz0a9/Oi11kgGRZp+BBI=";
   };
 
   makeFlags = [
diff --git a/nixpkgs/pkgs/tools/networking/wormhole-william/default.nix b/nixpkgs/pkgs/tools/networking/wormhole-william/default.nix
index 95d77f7402c7..af439b741305 100644
--- a/nixpkgs/pkgs/tools/networking/wormhole-william/default.nix
+++ b/nixpkgs/pkgs/tools/networking/wormhole-william/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "wormhole-william";
-  version = "1.0.6";
+  version = "1.0.7";
 
   src = fetchFromGitHub {
     owner = "psanford";
     repo = "wormhole-william";
     rev = "v${version}";
-    sha256 = "sha256-L/0zgQkwADElpIzOJAROa3CN/YNl76Af2pAhX8y2Wxs=";
+    sha256 = "sha256-KLj9ZeLcIOWA4VeuxfoOr99kUCDb7OARX/h9DSG1WHw=";
   };
 
-  vendorSha256 = "sha256-J6iht3cagcwFekydShgaYJtkNLfEvSDqonkC7+frldM=";
+  vendorHash = "sha256-oJz7HgtjuP4ooXdpofIKaDndGg4WqVZgbT8Yb1AyaMs=";
 
   preCheck = ''
     # wormhole_test.go:692: failed to establish connection
diff --git a/nixpkgs/pkgs/tools/networking/zerotierone/Cargo.lock b/nixpkgs/pkgs/tools/networking/zerotierone/Cargo.lock
index e6373783c50e..b01e68e2d084 100644
--- a/nixpkgs/pkgs/tools/networking/zerotierone/Cargo.lock
+++ b/nixpkgs/pkgs/tools/networking/zerotierone/Cargo.lock
@@ -3,6 +3,27 @@
 version = 3
 
 [[package]]
+name = "addr2line"
+version = "0.20.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3"
+dependencies = [
+ "gimli",
+]
+
+[[package]]
+name = "adler"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+[[package]]
+name = "android-tzdata"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
+
+[[package]]
 name = "android_system_properties"
 version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -38,6 +59,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
+name = "backtrace"
+version = "0.3.68"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4319208da049c43661739c5fade2ba182f09d1dc2299b32298d3a31692b17e12"
+dependencies = [
+ "addr2line",
+ "cc",
+ "cfg-if",
+ "libc",
+ "miniz_oxide",
+ "object",
+ "rustc-demangle",
+]
+
+[[package]]
 name = "base64"
 version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -45,9 +81,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
 
 [[package]]
 name = "base64"
-version = "0.21.0"
+version = "0.21.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a"
+checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d"
 
 [[package]]
 name = "bitflags"
@@ -56,19 +92,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
+name = "bitflags"
+version = "2.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635"
+
+[[package]]
 name = "block-buffer"
-version = "0.10.3"
+version = "0.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e"
+checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
 dependencies = [
  "generic-array",
 ]
 
 [[package]]
 name = "bumpalo"
-version = "3.12.0"
+version = "3.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535"
+checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1"
 
 [[package]]
 name = "bytes"
@@ -90,16 +132,19 @@ dependencies = [
  "quote",
  "serde",
  "serde_json",
- "syn",
+ "syn 1.0.109",
  "tempfile",
  "toml",
 ]
 
 [[package]]
 name = "cc"
-version = "1.0.79"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
+checksum = "305fe645edc1442a0fa8b6726ba61d422798d37a52e12eaecf4b022ebbb88f01"
+dependencies = [
+ "libc",
+]
 
 [[package]]
 name = "cfg-if"
@@ -109,12 +154,12 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "chrono"
-version = "0.4.23"
+version = "0.4.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f"
+checksum = "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5"
 dependencies = [
+ "android-tzdata",
  "iana-time-zone",
- "num-integer",
  "num-traits",
  "serde",
  "winapi",
@@ -128,7 +173,7 @@ checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
 dependencies = [
  "ansi_term",
  "atty",
- "bitflags",
+ "bitflags 1.3.2",
  "strsim 0.8.0",
  "textwrap",
  "unicode-width",
@@ -136,16 +181,6 @@ dependencies = [
 ]
 
 [[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 = "core-foundation"
 version = "0.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -157,15 +192,15 @@ dependencies = [
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.8.3"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
+checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
 
 [[package]]
 name = "cpufeatures"
-version = "0.2.5"
+version = "0.2.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320"
+checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1"
 dependencies = [
  "libc",
 ]
@@ -181,50 +216,6 @@ dependencies = [
 ]
 
 [[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]]
 name = "darling"
 version = "0.13.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -245,7 +236,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "strsim 0.10.0",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -256,14 +247,20 @@ checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835"
 dependencies = [
  "darling_core",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
+name = "deranged"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7684a49fb1af197853ef7b2ee694bc1f5b4179556f1e5710e1760c5db6f5e929"
+
+[[package]]
 name = "digest"
-version = "0.10.6"
+version = "0.10.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f"
+checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
 dependencies = [
  "block-buffer",
  "crypto-common",
@@ -272,9 +269,9 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.8.1"
+version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
+checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
 
 [[package]]
 name = "encoding_rs"
@@ -287,13 +284,13 @@ dependencies = [
 
 [[package]]
 name = "errno"
-version = "0.2.8"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1"
+checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f"
 dependencies = [
  "errno-dragonfly",
  "libc",
- "winapi",
+ "windows-sys",
 ]
 
 [[package]]
@@ -308,12 +305,9 @@ dependencies = [
 
 [[package]]
 name = "fastrand"
-version = "1.9.0"
+version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
-dependencies = [
- "instant",
-]
+checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764"
 
 [[package]]
 name = "fnv"
@@ -338,51 +332,51 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
 
 [[package]]
 name = "form_urlencoded"
-version = "1.1.0"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8"
+checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652"
 dependencies = [
  "percent-encoding",
 ]
 
 [[package]]
 name = "futures-channel"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e5317663a9089767a1ec00a487df42e0ca174b61b4483213ac24448e4664df5"
+checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
 dependencies = [
  "futures-core",
 ]
 
 [[package]]
 name = "futures-core"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec90ff4d0fe1f57d600049061dc6bb68ed03c7d2fbd697274c41805dcb3f8608"
+checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
 
 [[package]]
 name = "futures-io"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfb8371b6fb2aeb2d280374607aeabfc99d95c72edfe51692e42d3d7f0d08531"
+checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
 
 [[package]]
 name = "futures-sink"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f310820bb3e8cfd46c80db4d7fb8353e15dfff853a127158425f31e0be6c8364"
+checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
 
 [[package]]
 name = "futures-task"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcf79a1bf610b10f42aea489289c5a2c478a786509693b80cd39c44ccd936366"
+checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
 
 [[package]]
 name = "futures-util"
-version = "0.3.26"
+version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c1d6de3acfef38d2be4b1f543f553131788603495be83da675e180c8d6b7bd1"
+checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
 dependencies = [
  "futures-core",
  "futures-io",
@@ -395,9 +389,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",
@@ -405,9 +399,9 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.8"
+version = "0.2.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
+checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -417,10 +411,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "gimli"
+version = "0.27.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e"
+
+[[package]]
 name = "h2"
-version = "0.3.16"
+version = "0.3.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5be7b54589b581f624f566bf5d8eb2bab1db736c51528720b6bd36b96b55924d"
+checksum = "97ec8491ebaf99c8eaa73058b045fe58073cd6be7f596ac993ced0b0a0c01049"
 dependencies = [
  "bytes",
  "fnv",
@@ -461,12 +461,9 @@ dependencies = [
 
 [[package]]
 name = "hermit-abi"
-version = "0.2.6"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7"
-dependencies = [
- "libc",
-]
+checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b"
 
 [[package]]
 name = "hmac"
@@ -507,15 +504,15 @@ checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
 
 [[package]]
 name = "httpdate"
-version = "1.0.2"
+version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421"
+checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
 
 [[package]]
 name = "hyper"
-version = "0.14.24"
+version = "0.14.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e011372fa0b68db8350aa7a248930ecc7839bf46d8485577d69f117a75f164c"
+checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468"
 dependencies = [
  "bytes",
  "futures-channel",
@@ -528,7 +525,7 @@ dependencies = [
  "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2",
+ "socket2 0.4.9",
  "tokio",
  "tower-service",
  "tracing",
@@ -550,26 +547,25 @@ dependencies = [
 
 [[package]]
 name = "iana-time-zone"
-version = "0.1.53"
+version = "0.1.57"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765"
+checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613"
 dependencies = [
  "android_system_properties",
  "core-foundation-sys",
  "iana-time-zone-haiku",
  "js-sys",
  "wasm-bindgen",
- "winapi",
+ "windows",
 ]
 
 [[package]]
 name = "iana-time-zone-haiku"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca"
+checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
 dependencies = [
- "cxx",
- "cxx-build",
+ "cc",
 ]
 
 [[package]]
@@ -580,9 +576,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
 
 [[package]]
 name = "idna"
-version = "0.3.0"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"
+checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c"
 dependencies = [
  "unicode-bidi",
  "unicode-normalization",
@@ -590,38 +586,19 @@ 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",
 ]
 
 [[package]]
-name = "instant"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "io-lifetimes"
-version = "1.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1abeb7a0dd0f8181267ff8adc397075586500b81b28a73e8a0208b00fc170fb3"
-dependencies = [
- "libc",
- "windows-sys 0.45.0",
-]
-
-[[package]]
 name = "ipnet"
-version = "2.7.1"
+version = "2.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30e22bd8629359895450b59ea7a776c850561b96a3b1d31321c1949d9e6c9146"
+checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6"
 
 [[package]]
 name = "itertools"
@@ -634,15 +611,15 @@ dependencies = [
 
 [[package]]
 name = "itoa"
-version = "1.0.5"
+version = "1.0.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440"
+checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
 
 [[package]]
 name = "js-sys"
-version = "0.3.61"
+version = "0.3.64"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730"
+checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -669,33 +646,21 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
 name = "libc"
-version = "0.2.139"
+version = "0.2.147"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
-
-[[package]]
-name = "link-cplusplus"
-version = "1.0.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5"
-dependencies = [
- "cc",
-]
+checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.1.4"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
+checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503"
 
 [[package]]
 name = "log"
-version = "0.4.17"
+version = "0.4.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
-dependencies = [
- "cfg-if",
-]
+checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
 
 [[package]]
 name = "memchr"
@@ -705,20 +670,28 @@ checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
 
 [[package]]
 name = "mime"
-version = "0.3.16"
+version = "0.3.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
+
+[[package]]
+name = "miniz_oxide"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
+checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+dependencies = [
+ "adler",
+]
 
 [[package]]
 name = "mio"
-version = "0.8.6"
+version = "0.8.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b9d9a46eff5b4ff64b45a9e316a6d1e0bc719ef429cbec4dc630684212bfdf9"
+checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2"
 dependencies = [
  "libc",
- "log",
  "wasi",
- "windows-sys 0.45.0",
+ "windows-sys",
 ]
 
 [[package]]
@@ -762,28 +735,28 @@ dependencies = [
 
 [[package]]
 name = "num-traits"
-version = "0.2.15"
+version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
+checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2"
 dependencies = [
  "autocfg",
 ]
 
 [[package]]
 name = "num_cpus"
-version = "1.15.0"
+version = "1.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b"
+checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
 dependencies = [
- "hermit-abi 0.2.6",
+ "hermit-abi 0.3.2",
  "libc",
 ]
 
 [[package]]
 name = "oauth2"
-version = "4.3.0"
+version = "4.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eeaf26a72311c087f8c5ba617c96fac67a5c04f430e716ac8d8ab2de62e23368"
+checksum = "09a6e2a2b13a56ebeabba9142f911745be6456163fd6c3d361274ebcd891a80c"
 dependencies = [
  "base64 0.13.1",
  "chrono",
@@ -800,16 +773,25 @@ dependencies = [
 ]
 
 [[package]]
+name = "object"
+version = "0.31.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
 name = "once_cell"
-version = "1.17.1"
+version = "1.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
+checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
 
 [[package]]
 name = "openidconnect"
-version = "2.5.0"
+version = "2.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32a0f47b0f1499d08c4a8480c963d49c5ec77f4249c2b6869780979415f45809"
+checksum = "98dd5b7049bac4fdd2233b8c9767d42c05da8006fdb79cc903258556d2b18009"
 dependencies = [
  "base64 0.13.1",
  "chrono",
@@ -834,11 +816,11 @@ dependencies = [
 
 [[package]]
 name = "openssl"
-version = "0.10.45"
+version = "0.10.56"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b102428fd03bc5edf97f62620f7298614c45cedf287c271e7ed450bbaf83f2e1"
+checksum = "729b745ad4a5575dd06a3e1af1414bd330ee561c01b3899eb584baeaa8def17e"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "cfg-if",
  "foreign-types",
  "libc",
@@ -849,13 +831,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",
+ "syn 2.0.29",
 ]
 
 [[package]]
@@ -866,11 +848,10 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
 name = "openssl-sys"
-version = "0.9.80"
+version = "0.9.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23bbbf7854cd45b83958ebe919f0e8e516793727652e27fda10a8384cfc790b7"
+checksum = "866b5f16f90776b9bb8dc1e1802ac6f0513de3a7a7465867bfbc563dc737faac"
 dependencies = [
- "autocfg",
  "cc",
  "libc",
  "pkg-config",
@@ -888,15 +869,15 @@ dependencies = [
 
 [[package]]
 name = "percent-encoding"
-version = "2.2.0"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
+checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94"
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.9"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
+checksum = "12cc1b0bf1727a77a54b6654e7b5f1af8604923edc8b81885f8ec92f9e3f0a05"
 
 [[package]]
 name = "pin-utils"
@@ -906,9 +887,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
 name = "pkg-config"
-version = "0.3.26"
+version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
+checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
 
 [[package]]
 name = "ppv-lite86"
@@ -918,18 +899,18 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.51"
+version = "1.0.66"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6"
+checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.23"
+version = "1.0.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
+checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
 dependencies = [
  "proc-macro2",
 ]
@@ -966,20 +947,20 @@ dependencies = [
 
 [[package]]
 name = "redox_syscall"
-version = "0.2.16"
+version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
+checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
 ]
 
 [[package]]
 name = "reqwest"
-version = "0.11.14"
+version = "0.11.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21eed90ec8570952d53b772ecf8f206aa1ec9a3d76b2521c56c42973f2d91ee9"
+checksum = "cde824a14b7c14f85caff81225f411faacc04a2013f41670f41443742b1c1c55"
 dependencies = [
- "base64 0.21.0",
+ "base64 0.21.2",
  "bytes",
  "encoding_rs",
  "futures-core",
@@ -1026,47 +1007,46 @@ dependencies = [
 ]
 
 [[package]]
+name = "rustc-demangle"
+version = "0.1.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
+
+[[package]]
 name = "rustix"
-version = "0.36.8"
+version = "0.38.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f43abb88211988493c1abb44a70efa56ff0ce98f233b7b276146f1f3f7ba9644"
+checksum = "19ed4fa021d81c8392ce04db050a3da9a60299050b7ae1cf482d862b54a7218f"
 dependencies = [
- "bitflags",
+ "bitflags 2.4.0",
  "errno",
- "io-lifetimes",
  "libc",
  "linux-raw-sys",
- "windows-sys 0.45.0",
+ "windows-sys",
 ]
 
 [[package]]
 name = "ryu"
-version = "1.0.12"
+version = "1.0.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde"
+checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
 
 [[package]]
 name = "schannel"
-version = "0.1.21"
+version = "0.1.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "713cfb06c7059f3588fb8044c0fad1d09e3c01d225e25b9220dbfdcf16dbb1b3"
+checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88"
 dependencies = [
- "windows-sys 0.42.0",
+ "windows-sys",
 ]
 
 [[package]]
-name = "scratch"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ddccb15bcce173023b3fedd9436f882a0739b8dfb45e4f6b6002bee5929f61b2"
-
-[[package]]
 name = "security-framework"
-version = "2.8.2"
+version = "2.9.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a332be01508d814fed64bf28f798a146d73792121129962fdf335bb3c49a4254"
+checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation",
  "core-foundation-sys",
  "libc",
@@ -1075,9 +1055,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework-sys"
-version = "2.8.0"
+version = "2.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31c9bb296072e961fcbd8853511dd39c2d8be2deb1e17c6860b1d30732b323b4"
+checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -1085,9 +1065,9 @@ dependencies = [
 
 [[package]]
 name = "serde"
-version = "1.0.152"
+version = "1.0.183"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
+checksum = "32ac8da02677876d532745a130fc9d8e6edfa81a269b107c5b00829b91d8eb3c"
 dependencies = [
  "serde_derive",
 ]
@@ -1104,20 +1084,20 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.152"
+version = "1.0.183"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
+checksum = "aafe972d60b0b9bee71a91b92fee2d4fb3c9d7e8f6b179aa99f27203d99a4816"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.29",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.93"
+version = "1.0.105"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cad406b69c91885b5107daf2c29572f6c8cdb3c66826821e286c533490c0bc76"
+checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360"
 dependencies = [
  "itoa",
  "ryu",
@@ -1126,10 +1106,11 @@ dependencies = [
 
 [[package]]
 name = "serde_path_to_error"
-version = "0.1.9"
+version = "0.1.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26b04f22b563c91331a10074bda3dd5492e3cc39d56bd557e91c0af42b6c7341"
+checksum = "4beec8bce849d58d06238cb50db2e1c417cfeafa4c63f692b15c82b7c80f8335"
 dependencies = [
+ "itoa",
  "serde",
 ]
 
@@ -1173,14 +1154,14 @@ dependencies = [
  "darling",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "sha2"
-version = "0.10.6"
+version = "0.10.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0"
+checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8"
 dependencies = [
  "cfg-if",
  "cpufeatures",
@@ -1198,15 +1179,25 @@ dependencies = [
 
 [[package]]
 name = "socket2"
-version = "0.4.7"
+version = "0.4.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"
+checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662"
 dependencies = [
  "libc",
  "winapi",
 ]
 
 [[package]]
+name = "socket2"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877"
+dependencies = [
+ "libc",
+ "windows-sys",
+]
+
+[[package]]
 name = "spin"
 version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1226,9 +1217,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
 name = "subtle"
-version = "2.4.1"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601"
+checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
 
 [[package]]
 name = "syn"
@@ -1242,25 +1233,27 @@ dependencies = [
 ]
 
 [[package]]
-name = "tempfile"
-version = "3.4.0"
+name = "syn"
+version = "2.0.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af18f7ae1acd354b992402e9ec5864359d693cd8a79dcbef59f76891701c1e95"
+checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
 dependencies = [
- "cfg-if",
- "fastrand",
- "redox_syscall",
- "rustix",
- "windows-sys 0.42.0",
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
 ]
 
 [[package]]
-name = "termcolor"
-version = "1.2.0"
+name = "tempfile"
+version = "3.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
+checksum = "dc02fddf48964c42031a0b3fe0428320ecf3a73c401040fc0096f97794310651"
 dependencies = [
- "winapi-util",
+ "cfg-if",
+ "fastrand",
+ "redox_syscall",
+ "rustix",
+ "windows-sys",
 ]
 
 [[package]]
@@ -1274,30 +1267,31 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.38"
+version = "1.0.47"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0"
+checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.38"
+version = "1.0.47"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f"
+checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.29",
 ]
 
 [[package]]
 name = "time"
-version = "0.3.20"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd0cbfecb4d19b5ea75bb31ad904eb5b9fa13f21079c3b92017ebdf4999a5890"
+checksum = "b0fdd63d58b18d663fbdf70e049f00a22c8e42be082203be7f26589213cd75ea"
 dependencies = [
+ "deranged",
  "itoa",
  "serde",
  "time-core",
@@ -1306,15 +1300,15 @@ dependencies = [
 
 [[package]]
 name = "time-core"
-version = "0.1.0"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd"
+checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb"
 
 [[package]]
 name = "time-macros"
-version = "0.2.8"
+version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd80a657e71da814b8e5d60d3374fc6d35045062245d80224748ae522dd76f36"
+checksum = "eb71511c991639bb078fd5bf97757e03914361c48100d52878b8e52b46fb92cd"
 dependencies = [
  "time-core",
 ]
@@ -1336,19 +1330,18 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.26.0"
+version = "1.32.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03201d01c3c27a29c8a5cee5b55a93ddae1ccf6f08f65365c2c918f8c1b76f64"
+checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9"
 dependencies = [
- "autocfg",
+ "backtrace",
  "bytes",
  "libc",
- "memchr",
  "mio",
  "num_cpus",
  "pin-project-lite",
- "socket2",
- "windows-sys 0.45.0",
+ "socket2 0.5.3",
+ "windows-sys",
 ]
 
 [[package]]
@@ -1363,9 +1356,9 @@ dependencies = [
 
 [[package]]
 name = "tokio-util"
-version = "0.7.7"
+version = "0.7.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5427d89453009325de0d8f342c9490009f76e999cb7672d77e46267448f7e6b2"
+checksum = "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d"
 dependencies = [
  "bytes",
  "futures-core",
@@ -1403,9 +1396,9 @@ dependencies = [
 
 [[package]]
 name = "tracing-core"
-version = "0.1.30"
+version = "0.1.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a"
+checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a"
 dependencies = [
  "once_cell",
 ]
@@ -1424,15 +1417,15 @@ checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.10"
+version = "0.3.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d54675592c1dbefd78cbd98db9bacd89886e1ca50692a0692baefffdeb92dd58"
+checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.6"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc"
+checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c"
 
 [[package]]
 name = "unicode-normalization"
@@ -1463,9 +1456,9 @@ checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
 
 [[package]]
 name = "url"
-version = "2.3.1"
+version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643"
+checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb"
 dependencies = [
  "form_urlencoded",
  "idna",
@@ -1493,11 +1486,10 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
 
 [[package]]
 name = "want"
-version = "0.3.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0"
+checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e"
 dependencies = [
- "log",
  "try-lock",
 ]
 
@@ -1509,9 +1501,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.84"
+version = "0.2.87"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b"
+checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -1519,24 +1511,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.84"
+version = "0.2.87"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9"
+checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.29",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.34"
+version = "0.4.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f219e0d211ba40266969f6dbdd90636da12f75bee4fc9d6c23d1260dadb51454"
+checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -1546,9 +1538,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.84"
+version = "0.2.87"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5"
+checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -1556,28 +1548,28 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.84"
+version = "0.2.87"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
+checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.29",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.84"
+version = "0.2.87"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
+checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1"
 
 [[package]]
 name = "web-sys"
-version = "0.3.61"
+version = "0.3.64"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e33b99f4b23ba3eec1a53ac264e35a755f00e966e0065077d6027c0f575b0b97"
+checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -1600,49 +1592,34 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 
 [[package]]
-name = "winapi-util"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-dependencies = [
- "winapi",
-]
-
-[[package]]
 name = "winapi-x86_64-pc-windows-gnu"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
-name = "windows-sys"
-version = "0.42.0"
+name = "windows"
+version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
+checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
 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",
+ "windows-targets",
 ]
 
 [[package]]
 name = "windows-sys"
-version = "0.45.0"
+version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
+checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
 dependencies = [
  "windows-targets",
 ]
 
 [[package]]
 name = "windows-targets"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7"
+checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
 dependencies = [
  "windows_aarch64_gnullvm",
  "windows_aarch64_msvc",
@@ -1655,45 +1632,45 @@ dependencies = [
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608"
+checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
+checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640"
+checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
+checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45"
+checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463"
+checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
+checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "winreg"
@@ -1708,7 +1685,7 @@ dependencies = [
 name = "zeroidc"
 version = "0.1.0"
 dependencies = [
- "base64 0.21.0",
+ "base64 0.21.2",
  "bytes",
  "cbindgen",
  "jwt",
diff --git a/nixpkgs/pkgs/tools/networking/zerotierone/default.nix b/nixpkgs/pkgs/tools/networking/zerotierone/default.nix
index c761d887e35d..de0ffe86ec4f 100644
--- a/nixpkgs/pkgs/tools/networking/zerotierone/default.nix
+++ b/nixpkgs/pkgs/tools/networking/zerotierone/default.nix
@@ -2,10 +2,8 @@
 , stdenv
 , rustPlatform
 , fetchFromGitHub
-
 , buildPackages
 , cargo
-, iproute2
 , lzo
 , openssl
 , pkg-config
@@ -16,13 +14,13 @@
 
 let
   pname = "zerotierone";
-  version = "1.10.6";
+  version = "1.12.1";
 
   src = fetchFromGitHub {
     owner = "zerotier";
     repo = "ZeroTierOne";
     rev = version;
-    sha256 = "sha256-mapFKeF+8jMGkxSuHaw5oUdTdSQgAdxEwF/S6iyVLbY=";
+    sha256 = "sha256-430wdPrSNohM3sXewusjsW3tbE7EFGISGxABZF21yRc=";
   };
 
 in stdenv.mkDerivation {
@@ -62,8 +60,6 @@ in stdenv.mkDerivation {
     lzo
     openssl
     zlib
-  ] ++ lib.optional stdenv.isLinux [
-    iproute2
   ];
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/tools/networking/zrok/default.nix b/nixpkgs/pkgs/tools/networking/zrok/default.nix
index bbd5c2dc260b..fa59d9f7ddf2 100644
--- a/nixpkgs/pkgs/tools/networking/zrok/default.nix
+++ b/nixpkgs/pkgs/tools/networking/zrok/default.nix
@@ -11,14 +11,14 @@ let
   }.${system} or throwSystem;
 
   sha256 = {
-    x86_64-linux = "sha256-sHQD8uN8Pm/LnayW1XdWXJ90gN4cCE4sGd+Or4TlhP8=";
-    aarch64-linux = "sha256-VJaVC+sfqdT0BnV1v8MjzftemP4Iuln1wy3BaCTbeYA=";
-    armv7l-linux = "sha256-7v9u7OtUbtnzvlTBvO5zuIuTgNqualxYsrv97TZGa9U=";
+    x86_64-linux = "sha256-lI9FmAvUTzfukxyhjbB4mULURSQNhLcLbZ0NzIDem0g=";
+    aarch64-linux = "sha256-A77yPDC3MVDhc4Le+1XmHl/HRc0keYDfnS3kM1hQYL4=";
+    armv7l-linux = "sha256-khl0g8IDHtB53Sg4IdRzQs7A+FmUZyT/1dpKVTGnMs8=";
   }.${system} or throwSystem;
 in
 stdenv.mkDerivation rec {
   pname = "zrok";
-  version = "0.4.2";
+  version = "0.4.5";
 
   src = fetchzip {
     url = "https://github.com/openziti/zrok/releases/download/v${version}/zrok_${version}_${plat}.tar.gz";
diff --git a/nixpkgs/pkgs/tools/package-management/apt/default.nix b/nixpkgs/pkgs/tools/package-management/apt/default.nix
index 405c269b2239..74676827fb95 100644
--- a/nixpkgs/pkgs/tools/package-management/apt/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/apt/default.nix
@@ -28,11 +28,11 @@
 
 stdenv.mkDerivation rec {
   pname = "apt";
-  version = "2.7.2";
+  version = "2.7.3";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/a/apt/apt_${version}.tar.xz";
-    hash = "sha256-CVySyC/O/0zALdrcJHeFm4JjyI0wFdZ5mqcuMwE1my8=";
+    hash = "sha256-mtLrLE8lzjU12aXYBW4f6TLW27WMJkfNX8jfjJ+N71M=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/package-management/dpkg/default.nix b/nixpkgs/pkgs/tools/package-management/dpkg/default.nix
index 9e9d76b6a495..79bf6f8c5083 100644
--- a/nixpkgs/pkgs/tools/package-management/dpkg/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/dpkg/default.nix
@@ -18,12 +18,12 @@
 
 stdenv.mkDerivation rec {
   pname = "dpkg";
-  version = "1.21.22";
+  version = "1.22.0";
 
   src = fetchgit {
     url = "https://git.launchpad.net/ubuntu/+source/dpkg";
     rev = "applied/${version}";
-    hash = "sha256-tP2PNUrq90CXVDJZM7TG42dSEUVW2iQjaOVRjF7leSc=";
+    hash = "sha256-q+kP0PuQyGKuKahA1/TwtJG380a/sNR433xZhxvGO9M=";
   };
 
   configureFlags = [
diff --git a/nixpkgs/pkgs/tools/package-management/nix-doc/default.nix b/nixpkgs/pkgs/tools/package-management/nix-doc/default.nix
index f3983b0cd760..2166184eb6da 100644
--- a/nixpkgs/pkgs/tools/package-management/nix-doc/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nix-doc/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "nix-doc";
-  version = "0.5.10";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "lf-";
     repo = "nix-doc";
-    sha256 = "sha256-+T4Bz26roTFiXTM8P8FnJLSdFY2hP26X4nChWWUACN8=";
+    sha256 = "sha256-1y4BSdKgsV4WLcaNICVh5rac1ZAtZxFM3BlhL2g/AcI=";
   };
 
   doCheck = true;
@@ -29,7 +29,7 @@ rustPlatform.buildRustPackage rec {
     RUSTFLAGS = "-Z relro-level=partial";
   };
 
-  cargoSha256 = "sha256-GylSWo4LIsjKnJE9H6iJHZ99UI6UPhAOnAGXk+v8bko=";
+  cargoSha256 = "sha256-nP03WnXBcwazAi6nVe17CpDSeUxmG84BFFMA5ueey3M=";
 
   meta = with lib; {
     description = "An interactive Nix documentation tool";
diff --git a/nixpkgs/pkgs/tools/package-management/nixpkgs-review/default.nix b/nixpkgs/pkgs/tools/package-management/nixpkgs-review/default.nix
index 6cbf981cedd9..8e02281540cd 100644
--- a/nixpkgs/pkgs/tools/package-management/nixpkgs-review/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/nixpkgs-review/default.nix
@@ -16,14 +16,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "nixpkgs-review";
-  version = "2.10.0";
+  version = "2.10.1";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "Mic92";
     repo = "nixpkgs-review";
     rev = version;
-    hash = "sha256-uMcTwRmELk/vFI7vU4+UUvBDhlF+gVgohIXE0Sm1/d8=";
+    hash = "sha256-zZM0Ozl6uoYfzvHhQRluS4/5NNRuumQgc4MV993LNyY=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/package-management/npm-check-updates/default.nix b/nixpkgs/pkgs/tools/package-management/npm-check-updates/default.nix
new file mode 100644
index 000000000000..93585593a494
--- /dev/null
+++ b/nixpkgs/pkgs/tools/package-management/npm-check-updates/default.nix
@@ -0,0 +1,27 @@
+{ lib
+, buildNpmPackage
+, fetchFromGitHub
+}:
+
+buildNpmPackage rec {
+  pname = "npm-check-updates";
+  version = "16.13.0";
+
+  src = fetchFromGitHub {
+    owner = "raineorshine";
+    repo = "npm-check-updates";
+    rev = "v${version}";
+    hash = "sha256-RrNO1TAPNFB/6JWY8xZjNCZ+FDgM0MCn7vaDXoCSIfI=";
+  };
+
+  npmDepsHash = "sha256-aghW4d3/8cJmwpmI5PcHioCnc91Yu4N5EfwuoaB5Xqw=";
+
+  meta = {
+    changelog = "https://github.com/raineorshine/npm-check-updates/blob/${src.rev}/CHANGELOG.md";
+    description = "Find newer versions of package dependencies than what your package.json allows";
+    homepage = "https://github.com/raineorshine/npm-check-updates";
+    license = lib.licenses.asl20;
+    mainProgram = "ncu";
+    maintainers = with lib.maintainers; [ flosse ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/package-management/pkg/default.nix b/nixpkgs/pkgs/tools/package-management/pkg/default.nix
index 25c3fd134324..800400ba93c4 100644
--- a/nixpkgs/pkgs/tools/package-management/pkg/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/pkg/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "pkg";
-  version = "1.20.4";
+  version = "1.20.5";
 
   src = fetchFromGitHub {
     owner = "freebsd";
     repo = "pkg";
     rev = finalAttrs.version;
-    sha256 = "sha256-GW29jbFt68ITJfmuxkwl8c39mA+ObYiV6NeT/OXPlyM=";
+    sha256 = "sha256-svAxEBRnqwWhmu3aRfeGeEjXfADbb1zWPj+REK9fsDM=";
   };
 
   setOutputFlags = false;
diff --git a/nixpkgs/pkgs/tools/package-management/poetry/default.nix b/nixpkgs/pkgs/tools/package-management/poetry/default.nix
index 62c4ac599697..d1dd48c0aad8 100644
--- a/nixpkgs/pkgs/tools/package-management/poetry/default.nix
+++ b/nixpkgs/pkgs/tools/package-management/poetry/default.nix
@@ -39,10 +39,6 @@ let
           rev = version;
           hash = "sha256-Gc22Y2T4uO39jiOqEUFeOfnVCbknuDjmzFPZgk2eY74=";
         };
-        patches = [ ];
-        nativeCheckInputs = old.nativeCheckInputs ++ [
-          self.tomli-w
-        ];
       });
     } // (plugins self);
   };
diff --git a/nixpkgs/pkgs/tools/security/apachetomcatscanner/default.nix b/nixpkgs/pkgs/tools/security/apachetomcatscanner/default.nix
index 13a11808b7dd..41c68aa79792 100644
--- a/nixpkgs/pkgs/tools/security/apachetomcatscanner/default.nix
+++ b/nixpkgs/pkgs/tools/security/apachetomcatscanner/default.nix
@@ -15,6 +15,12 @@ python3.pkgs.buildPythonApplication rec {
     hash = "sha256-ChVVXUjm6y71iRs64Kv63oiOG1GSqmx6J0YiGtEI0ao=";
   };
 
+  # Posted a PR for discussion upstream that can be followed:
+  # https://github.com/p0dalirius/ApacheTomcatScanner/pull/32
+  postPatch = ''
+    sed -i '/apachetomcatscanner=apachetomcatscanner\.__main__:main/d' setup.py
+  '';
+
   propagatedBuildInputs = with python3.pkgs; [
     requests
     sectools
diff --git a/nixpkgs/pkgs/tools/security/bitwarden/cli.nix b/nixpkgs/pkgs/tools/security/bitwarden/cli.nix
index 446dc89bd8b7..22cfca249718 100644
--- a/nixpkgs/pkgs/tools/security/bitwarden/cli.nix
+++ b/nixpkgs/pkgs/tools/security/bitwarden/cli.nix
@@ -12,16 +12,16 @@ let
   buildNpmPackage' = buildNpmPackage.override { nodejs = nodejs_18; };
 in buildNpmPackage' rec {
   pname = "bitwarden-cli";
-  version = "2023.7.0";
+  version = "2023.8.2";
 
   src = fetchFromGitHub {
     owner = "bitwarden";
     repo = "clients";
     rev = "cli-v${version}";
-    hash = "sha256-Xnfjp+qRJWvxvgSODbajLxYsP2DtOYK9CXBMfIn+qwA=";
+    hash = "sha256-v9ql01dwWf9kBxw75n9svQousrnbUi8NY1wkJx06teg=";
   };
 
-  npmDepsHash = "sha256-vz7erDhh3BpHNadPwIXkD2PRCnbxM7e7lE0rvBEXGyc=";
+  npmDepsHash = "sha256-RvkauNvt6MZxWMssEtaCjXP1z/3NsReywUgCefV/jjM=";
 
   nativeBuildInputs = [
     python3
diff --git a/nixpkgs/pkgs/tools/security/chopchop/default.nix b/nixpkgs/pkgs/tools/security/chopchop/default.nix
index 10ac9e7f4a77..fc7bd0326fd4 100644
--- a/nixpkgs/pkgs/tools/security/chopchop/default.nix
+++ b/nixpkgs/pkgs/tools/security/chopchop/default.nix
@@ -11,10 +11,10 @@ buildGoModule rec {
     owner = "michelin";
     repo = "ChopChop";
     rev = "v${version}";
-    sha256 = "qSBQdcS6d0tctSHRbkY4T7s6Zj7xI2abaPUvNKh1M2E=";
+    hash = "sha256-qSBQdcS6d0tctSHRbkY4T7s6Zj7xI2abaPUvNKh1M2E=";
   };
 
-  vendorSha256 = "UxWARWOFp8AYKEdiJwRZNwFrphgMTJSZjnvktTNOsgU=";
+  vendorHash = "sha256-UxWARWOFp8AYKEdiJwRZNwFrphgMTJSZjnvktTNOsgU=";
 
   meta = with lib; {
     description = "CLI to search for sensitive services/files/folders";
diff --git a/nixpkgs/pkgs/tools/security/clairvoyance/default.nix b/nixpkgs/pkgs/tools/security/clairvoyance/default.nix
index 2ffc101eb983..ba88338347fc 100644
--- a/nixpkgs/pkgs/tools/security/clairvoyance/default.nix
+++ b/nixpkgs/pkgs/tools/security/clairvoyance/default.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "clairvoyance";
-  version = "2.0.6";
+  version = "2.5.3";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "nikitastupin";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-Jsb/UjqAppAUz9AGgON6AyVgUdOY6aswjQ9EL939Kro=";
+    hash = "sha256-CVXa2HvX7M0cwqnTeZVETg07j324ATQuMNreEgAC2QA=";
   };
 
   nativeBuildInputs = with python3.pkgs; [
@@ -21,6 +21,7 @@ python3.pkgs.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3.pkgs; [
     aiohttp
+    rich
   ];
 
   nativeCheckInputs = with python3.pkgs; [
@@ -45,6 +46,7 @@ python3.pkgs.buildPythonApplication rec {
   meta = with lib; {
     description = "Tool to obtain GraphQL API schemas";
     homepage = "https://github.com/nikitastupin/clairvoyance";
+    changelog = "https://github.com/nikitastupin/clairvoyance/releases/tag/v${version}";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/nixpkgs/pkgs/tools/security/cosign/default.nix b/nixpkgs/pkgs/tools/security/cosign/default.nix
index f3e58b1e2a33..c08a8cf1dd17 100644
--- a/nixpkgs/pkgs/tools/security/cosign/default.nix
+++ b/nixpkgs/pkgs/tools/security/cosign/default.nix
@@ -13,13 +13,13 @@
 }:
 buildGoModule rec {
   pname = "cosign";
-  version = "2.1.1";
+  version = "2.2.0";
 
   src = fetchFromGitHub {
     owner = "sigstore";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-5dRrq+mV2fDGTi2WZHlCP8+GH3cBJIE8AHGuch7hv/I=";
+    hash = "sha256-VE/rm85KZs3JWMsidIlUGJ9JrtZ4VBI+Go1yujq7z1s=";
   };
 
   buildInputs =
@@ -28,7 +28,7 @@ buildGoModule rec {
 
   nativeBuildInputs = [ pkg-config installShellFiles ];
 
-  vendorHash = "sha256-y9bUwyQMYw4m7JZ6RpTlcYZOiCoxaQRiWYKNmgzEXJA=";
+  vendorHash = "sha256-mpT4/BS/NofMueBbwhh4v6pNEONEpWM9RDKuYZ+9BtA=";
 
   subPackages = [
     "cmd/cosign"
diff --git a/nixpkgs/pkgs/tools/security/earlybird/default.nix b/nixpkgs/pkgs/tools/security/earlybird/default.nix
index eb13b38c158f..c7c16ab47d38 100644
--- a/nixpkgs/pkgs/tools/security/earlybird/default.nix
+++ b/nixpkgs/pkgs/tools/security/earlybird/default.nix
@@ -2,24 +2,30 @@
 , buildGoModule
 , fetchFromGitHub
 }:
-buildGoModule {
+
+buildGoModule rec {
   pname = "earlybird";
-  version = "1.25.0";
+  version = "3.16.0";
 
   src = fetchFromGitHub {
     owner = "americanexpress";
     repo = "earlybird";
-    # According to the GitHub repo, the latest version *is* 1.25.0, but they
-    # tagged it as "refs/heads/main-2"
-    rev = "4f365f1c02972dc0a68a196a262912d9c4325b21";
-    sha256 = "UZXHYBwBmb9J1HrE/htPZcKvZ+7mc+oXnUtzgBmBgN4=";
+    rev = "v${version}";
+    hash = "sha256-qSW8O13UW5L2eVsqIuqOguhCyZBPqevZ9fJ7qkraa7M=";
   };
 
-  vendorSha256 = "oSHBR1EvK/1+cXqGNCE9tWn6Kd/BwNY3m5XrKCAijhA=";
+  patches = [
+    ./fix-go.mod-dependency.patch
+  ];
+
+  vendorHash = "sha256-ktsQvWc0CTnqOer+9cc0BddrQp0F3Xk7YJP3jxfuw1w=";
+
+  ldflags = [ "-s" "-w" ];
 
   meta = with lib; {
     description = "A sensitive data detection tool capable of scanning source code repositories for passwords, key files, and more";
     homepage = "https://github.com/americanexpress/earlybird";
+    changelog = "https://github.com/americanexpress/earlybird/releases/tag/v${version}";
     license = licenses.asl20;
     maintainers = [ ];
   };
diff --git a/nixpkgs/pkgs/tools/security/earlybird/fix-go.mod-dependency.patch b/nixpkgs/pkgs/tools/security/earlybird/fix-go.mod-dependency.patch
new file mode 100644
index 000000000000..fb1cf4afdabc
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/earlybird/fix-go.mod-dependency.patch
@@ -0,0 +1,13 @@
+--- a/go.mod
++++ b/go.mod
+@@ -42,8 +42,9 @@ require (
+ 	github.com/src-d/gcfg v1.4.0 // indirect
+ 	github.com/ssor/bom v0.0.0-20170718123548-6386211fdfcf // indirect
+ 	github.com/xanzy/ssh-agent v0.2.1 // indirect
+-	golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4 // indirect
++	golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 // indirect
+ 	golang.org/x/sys v0.0.0-20220906165534-d0df966e6959 // indirect
++	golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 // indirect
+ 	google.golang.org/protobuf v1.23.0 // indirect
+ 	gopkg.in/src-d/go-billy.v4 v4.3.2 // indirect
+ 	gopkg.in/warnings.v0 v0.1.2 // indirect
diff --git a/nixpkgs/pkgs/tools/security/exploitdb/default.nix b/nixpkgs/pkgs/tools/security/exploitdb/default.nix
index 1ab7fba07084..7b60deeb699c 100644
--- a/nixpkgs/pkgs/tools/security/exploitdb/default.nix
+++ b/nixpkgs/pkgs/tools/security/exploitdb/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "exploitdb";
-  version = "2023-08-24";
+  version = "2023-08-30";
 
   src = fetchFromGitLab {
     owner = "exploit-database";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-iL0RfcTOKQ3c3UErfAE0efi4HXJYHUP6RFcgDzeGJqU=";
+    hash = "sha256-EWxZvr0VbSN8aysDQmqA/d/V5bxy4z1wx2PtC5RVAuI=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/security/flare-floss/default.nix b/nixpkgs/pkgs/tools/security/flare-floss/default.nix
index 283c761680b1..b049ea166108 100644
--- a/nixpkgs/pkgs/tools/security/flare-floss/default.nix
+++ b/nixpkgs/pkgs/tools/security/flare-floss/default.nix
@@ -2,32 +2,10 @@
 , python3
 , fetchFromGitHub
 }:
-let
-  py = python3.override {
-    packageOverrides = final: prev: {
-      # required for networkx 2.5.1
-      decorator = prev.decorator.overridePythonAttrs (o: o // rec {
-        version = "4.4.2";
-        src = o.src.override {
-          inherit version;
-          hash = "sha256-46YvBSAXJEDKDcyCN0kxk4Ljd/N/FAoLme9F/suEv+c=";
-        };
-      });
 
-      # flare-floss requires this exact version (newer versions are incompatible)
-      networkx = prev.networkx.overridePythonAttrs (o: o // rec {
-        version = "2.5.1";
-        src = o.src.override {
-          inherit version;
-          hash = "sha256-EJzVhcrEEpf3EQPDxCrG73N58peI61TLdRvlpmO7I1o=";
-        };
-      });
-    };
-  };
-in
-py.pkgs.buildPythonPackage rec {
+python3.pkgs.buildPythonPackage rec {
   pname = "flare-floss";
-  version = "2.2.0";
+  version = "2.3.0";
   format = "setuptools";
 
   src = fetchFromGitHub {
@@ -35,7 +13,7 @@ py.pkgs.buildPythonPackage rec {
     repo = "flare-floss";
     rev = "refs/tags/v${version}";
     fetchSubmodules = true; # for tests
-    hash = "sha256-Oa0DMl7RKNfA00shcc4y1sNd2OiKCf0sA0EUC5gByBI=";
+    hash = "sha256-tOLnve5XBc3TtSgucPIddBHD0YJhsRpRduXsKrtJ/eQ=";
   };
 
   postPatch = ''
@@ -46,17 +24,19 @@ py.pkgs.buildPythonPackage rec {
       --replace 'sigs_path = os.path.join(get_default_root(), "sigs")' 'sigs_path = "'"$out"'/share/flare-floss/sigs"'
   '';
 
-  propagatedBuildInputs = with py.pkgs; [
+  propagatedBuildInputs = with python3.pkgs; [
     halo
     networkx
+    pefile
     pydantic
+    rich
     tabulate
     tqdm
     viv-utils
     vivisect
   ] ++ viv-utils.optional-dependencies.flirt;
 
-  nativeCheckInputs = with py.pkgs; [
+  nativeCheckInputs = with python3.pkgs; [
     pytest-sugar
     pytestCheckHook
     pyyaml
diff --git a/nixpkgs/pkgs/tools/security/grype/default.nix b/nixpkgs/pkgs/tools/security/grype/default.nix
index b1668c1274aa..1654a903add2 100644
--- a/nixpkgs/pkgs/tools/security/grype/default.nix
+++ b/nixpkgs/pkgs/tools/security/grype/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "grype";
-  version = "0.65.2";
+  version = "0.66.0";
 
   src = fetchFromGitHub {
     owner = "anchore";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-ST+fJfkViQubCWVMY2BbOgE7tOpXjCX1ATLBmLmvMiY=";
+    hash = "sha256-oZSXUwWucSyd2JYx0TkYfxgP6NZjjA2bhTrlOJSNh8c=";
     # 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-HaqJ1Pc0A29D0HielGhP6uxkVccB8JyUrm0Q5nW8teU=";
+  vendorHash = "sha256-Ur68es1eXsIldXqZjBbtMoK2fjvTIZ+ae2cWaiNzfBg=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/nixpkgs/pkgs/tools/security/imdshift/default.nix b/nixpkgs/pkgs/tools/security/imdshift/default.nix
new file mode 100644
index 000000000000..c33e0878cd4d
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/imdshift/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, fetchFromGitHub
+, python3
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "imdshift";
+  version = "1.0.0";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "ayushpriya10";
+    repo = "IMDShift";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-Uoa0uNOhCkT622Yy8GEg8jz9k5zmtXwGmvdb3MVTLX8=";
+  };
+
+  propagatedBuildInputs = with python3.pkgs; [
+    boto3
+    click
+    prettytable
+    tqdm
+  ];
+
+  # Project has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "IMDShift"
+  ];
+
+  meta = with lib; {
+    description = "Tool to migrate workloads to IMDSv2";
+    homepage = "https://github.com/ayushpriya10/IMDShift";
+    changelog = "https://github.com/ayushpriya10/IMDShift/releases/tag/v${version}";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/security/ipscan/default.nix b/nixpkgs/pkgs/tools/security/ipscan/default.nix
index 7611680c64af..72a44a4ab8a1 100644
--- a/nixpkgs/pkgs/tools/security/ipscan/default.nix
+++ b/nixpkgs/pkgs/tools/security/ipscan/default.nix
@@ -11,11 +11,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ipscan";
-  version = "3.9.0";
+  version = "3.9.1";
 
   src = fetchurl {
-    url = "https://github.com/angryip/ipscan/releases/download/${version}/ipscan_${version}_all.deb";
-    sha256 = "sha256-HpsEp5XSz118cbV2wT81hzQT4cgDEBnpUbpl45ZVvlg=";
+    url = "https://github.com/angryip/ipscan/releases/download/${version}/ipscan_${version}_amd64.deb";
+    hash = "sha256-UPkUwZV3NIeVfL3yYvqOhm4X5xW+40GOlZGy8WGhYmk=";
   };
 
   sourceRoot = ".";
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   installPhase = ''
     mkdir -p $out/share
-    cp usr/lib/ipscan/ipscan-any-${version}.jar $out/share/${pname}-${version}.jar
+    cp usr/lib/ipscan/ipscan-linux64-${version}.jar $out/share/${pname}-${version}.jar
 
     makeWrapper ${jre}/bin/java $out/bin/ipscan \
       --prefix LD_LIBRARY_PATH : "$out/lib/:${lib.makeLibraryPath [ swt xorg.libXtst ]}" \
@@ -42,12 +42,13 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description = "Fast and friendly network scanner";
+    description = "Angry IP Scanner - fast and friendly network scanner";
     homepage = "https://angryip.org";
+    downloadPage = "https://github.com/angryip/ipscan/releases/tag/${version}";
     changelog = "https://github.com/angryip/ipscan/blob/${version}/CHANGELOG";
     sourceProvenance = with sourceTypes; [ binaryBytecode ];
     license = licenses.gpl2Only;
     platforms = [ "x86_64-linux" ];
-    maintainers = with maintainers; [ kylesferrazza ];
+    maintainers = with maintainers; [ kylesferrazza totoroot ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/security/jwx/default.nix b/nixpkgs/pkgs/tools/security/jwx/default.nix
index fb5c2c59f11e..2ccf3d7bfd47 100644
--- a/nixpkgs/pkgs/tools/security/jwx/default.nix
+++ b/nixpkgs/pkgs/tools/security/jwx/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "jwx";
-  version = "2.0.11";
+  version = "2.0.12";
 
   src = fetchFromGitHub {
     owner = "lestrrat-go";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-8ZzDVCJERf9T9Tlth+9imVJPZIAwffR03S/8UflKjZc=";
+    hash = "sha256-2Lx9pu5KQut9eXIQYDjFW/pMDzR0eSKMFtSGOPQAkN4=";
   };
 
-  vendorHash = "sha256-RyAQh1uXw3bEZ6vuh8+mEf8T4l3ZIFAaFJ6dGMoANys=";
+  vendorHash = "sha256-o3EHPIXGLz/io0d8jhl9cxzctP3CeOjEDMQl1SY9lXg=";
 
   sourceRoot = "${src.name}/cmd/jwx";
 
diff --git a/nixpkgs/pkgs/tools/security/kubernetes-polaris/default.nix b/nixpkgs/pkgs/tools/security/kubernetes-polaris/default.nix
index 18f00ed756bb..a5640e87fb8c 100644
--- a/nixpkgs/pkgs/tools/security/kubernetes-polaris/default.nix
+++ b/nixpkgs/pkgs/tools/security/kubernetes-polaris/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kubernetes-polaris";
-  version = "8.4.0";
+  version = "8.5.0";
 
   src = fetchFromGitHub {
     owner = "FairwindsOps";
     repo = "polaris";
     rev = version;
-    sha256 = "sha256-r1SUYz71IXgqWTYtZlk+OjlYHSfJ8nOK2/YFOoIESMw=";
+    sha256 = "sha256-Xn3NZxZ2aMEgI8XnrPNjNkt8aTQ95brYcdJO2ba3L14=";
   };
 
-  vendorHash = "sha256-K9QvA4WNF61iToPze26OwP78HKseuajnsHzmWdoo7Y4=";
+  vendorHash = "sha256-ZWetW+Xar4BXXlR0iG+O/NRqYk41x+PPVCGis2W2Nkk=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/tools/security/metasploit/Gemfile b/nixpkgs/pkgs/tools/security/metasploit/Gemfile
index d52b52b62217..f62588de9e48 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/Gemfile
+++ b/nixpkgs/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.30"
+gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.3.31"
diff --git a/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock b/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock
index fe3c7d2c8838..f608b1b2fd48 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock
+++ b/nixpkgs/pkgs/tools/security/metasploit/Gemfile.lock
@@ -1,9 +1,9 @@
 GIT
   remote: https://github.com/rapid7/metasploit-framework
-  revision: e15c05b0bd8774e33c33c100965ec7e301e4f295
-  ref: refs/tags/6.3.30
+  revision: a97e8a0e2a3b15f3b3710f04def1178139ae0fa2
+  ref: refs/tags/6.3.31
   specs:
-    metasploit-framework (6.3.30)
+    metasploit-framework (6.3.31)
       actionpack (~> 7.0)
       activerecord (~> 7.0)
       activesupport (~> 7.0)
@@ -41,6 +41,7 @@ GIT
       mqtt
       msgpack (~> 1.6.0)
       nessus_rest
+      net-imap
       net-ldap
       net-smtp
       net-ssh
@@ -104,25 +105,25 @@ GEM
   remote: https://rubygems.org/
   specs:
     Ascii85 (1.1.0)
-    actionpack (7.0.7)
-      actionview (= 7.0.7)
-      activesupport (= 7.0.7)
+    actionpack (7.0.7.2)
+      actionview (= 7.0.7.2)
+      activesupport (= 7.0.7.2)
       rack (~> 2.0, >= 2.2.4)
       rack-test (>= 0.6.3)
       rails-dom-testing (~> 2.0)
       rails-html-sanitizer (~> 1.0, >= 1.2.0)
-    actionview (7.0.7)
-      activesupport (= 7.0.7)
+    actionview (7.0.7.2)
+      activesupport (= 7.0.7.2)
       builder (~> 3.1)
       erubi (~> 1.4)
       rails-dom-testing (~> 2.0)
       rails-html-sanitizer (~> 1.1, >= 1.2.0)
-    activemodel (7.0.7)
-      activesupport (= 7.0.7)
-    activerecord (7.0.7)
-      activemodel (= 7.0.7)
-      activesupport (= 7.0.7)
-    activesupport (7.0.7)
+    activemodel (7.0.7.2)
+      activesupport (= 7.0.7.2)
+    activerecord (7.0.7.2)
+      activemodel (= 7.0.7.2)
+      activesupport (= 7.0.7.2)
+    activesupport (7.0.7.2)
       concurrent-ruby (~> 1.0, >= 1.0.2)
       i18n (>= 1.6, < 2)
       minitest (>= 5.1)
@@ -133,13 +134,13 @@ GEM
     arel-helpers (2.14.0)
       activerecord (>= 3.1.0, < 8)
     aws-eventstream (1.2.0)
-    aws-partitions (1.806.0)
-    aws-sdk-core (3.180.3)
+    aws-partitions (1.811.0)
+    aws-sdk-core (3.181.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.399.0)
+    aws-sdk-ec2 (1.402.0)
       aws-sdk-core (~> 3, >= 3.177.0)
       aws-sigv4 (~> 1.1)
     aws-sdk-ec2instanceconnect (1.32.0)
@@ -151,8 +152,8 @@ GEM
     aws-sdk-kms (1.71.0)
       aws-sdk-core (~> 3, >= 3.177.0)
       aws-sigv4 (~> 1.1)
-    aws-sdk-s3 (1.132.1)
-      aws-sdk-core (~> 3, >= 3.179.0)
+    aws-sdk-s3 (1.134.0)
+      aws-sdk-core (~> 3, >= 3.181.0)
       aws-sdk-kms (~> 1)
       aws-sigv4 (~> 1.6)
     aws-sdk-ssm (1.156.0)
@@ -172,6 +173,7 @@ GEM
     cookiejar (0.3.3)
     crass (1.0.6)
     daemons (1.4.1)
+    date (3.3.3)
     dnsruby (1.70.0)
       simpleidn (~> 0.2.1)
     domain_name (0.5.20190701)
@@ -271,6 +273,9 @@ GEM
     mustermann (3.0.0)
       ruby2_keywords (~> 0.0.1)
     nessus_rest (0.1.6)
+    net-imap (0.3.7)
+      date
+      net-protocol
     net-ldap (0.18.0)
     net-protocol (0.2.1)
       timeout
@@ -317,9 +322,9 @@ GEM
     rails-html-sanitizer (1.6.0)
       loofah (~> 2.21)
       nokogiri (~> 1.14)
-    railties (7.0.7)
-      actionpack (= 7.0.7)
-      activesupport (= 7.0.7)
+    railties (7.0.7.2)
+      actionpack (= 7.0.7.2)
+      activesupport (= 7.0.7.2)
       method_source
       rake (>= 12.2)
       thor (~> 1.0)
@@ -331,7 +336,7 @@ GEM
     recog (3.1.2)
       nokogiri
     redcarpet (3.6.0)
-    reline (0.3.7)
+    reline (0.3.8)
       io-console (~> 0.5)
     rex-arch (0.1.14)
       rex-text
@@ -407,7 +412,7 @@ GEM
       tilt (~> 2.0)
     sqlite3 (1.6.3)
       mini_portile2 (~> 2.8.0)
-    sshkey (2.0.0)
+    sshkey (3.0.0)
     strptime (0.2.5)
     swagger-blocks (3.0.0)
     thin (1.8.2)
diff --git a/nixpkgs/pkgs/tools/security/metasploit/default.nix b/nixpkgs/pkgs/tools/security/metasploit/default.nix
index e98c4a25c121..9cfc107eceef 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/default.nix
+++ b/nixpkgs/pkgs/tools/security/metasploit/default.nix
@@ -15,13 +15,13 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "metasploit-framework";
-  version = "6.3.30";
+  version = "6.3.31";
 
   src = fetchFromGitHub {
     owner = "rapid7";
     repo = "metasploit-framework";
     rev = version;
-    sha256 = "sha256-j2tgBXn5PP4WegSk4NU5aVfrWVKYcYUS8fHFF5kuCJc=";
+    sha256 = "sha256-X0QJ4edzqLh01qAhmpcdiuk8xdAkccoJAZmxeTh3q48=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/nixpkgs/pkgs/tools/security/metasploit/gemset.nix b/nixpkgs/pkgs/tools/security/metasploit/gemset.nix
index 1f4f9687e1a4..d713e28fc444 100644
--- a/nixpkgs/pkgs/tools/security/metasploit/gemset.nix
+++ b/nixpkgs/pkgs/tools/security/metasploit/gemset.nix
@@ -4,50 +4,50 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "150sjsk12vzj9aswjy3cz124l8n8sn52bhd0wwly73rwc1a750sg";
+      sha256 = "0qamc5ly521wk9i1658h9jv7avmyyp92kffa1da2fn5zk0wgyhf4";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.7.2";
   };
   actionview = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nn21k5psxdv2fkwxs679lr0b8n1nzli2ks343cx4azn6snp8b8a";
+      sha256 = "151zxb61bb6q7g0sn34qz79k8bg02vmb8mmnsn0fr15lxw92dfhm";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.7.2";
   };
   activemodel = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1rspbw4yxx9fh2wyl2wvgwadwapfyx7j9zlirpd4pmk31wkhl4hf";
+      sha256 = "1crjq1dznlbsrwd5yijxraz1591xmg4vdcwwnmrw4nh6hrwq5fj5";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.7.2";
   };
   activerecord = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ygg145wxlgm12b1x5r0rsk2aa6i2wjz7bgb21j8vmyqyfl272cy";
+      sha256 = "03vrssdqaqm41w27s21r37skdfxa41midvjy37i2zh3rnbnq8ps2";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.7.2";
   };
   activesupport = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wzbnv3hns0yiwbgh1m3q5j0d7b0k52nlpwirhxyv3l0ycmljfr9";
+      sha256 = "1vlzcnyqlbchaq85phmdv73ydlc18xpvxy1cbsk191cwd29i7q32";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.7.2";
   };
   addressable = {
     groups = ["default"];
@@ -104,30 +104,30 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "072z18xbl8n793w4irrsmgh788csvmfkvw1iixsrmdzlzrjjagqx";
+      sha256 = "0082fsywglghvam55i4jz7cj2vyd8hb8b7658cr9yqlwna9j1sp3";
       type = "gem";
     };
-    version = "1.806.0";
+    version = "1.811.0";
   };
   aws-sdk-core = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0lc3j74v49b2akyimfnsx3vsgi1i3068cpchn358l0dv27aib6c2";
+      sha256 = "0xjw9cf6ldbw50xi5ric8d63r8kybpsvaqxh2v6n7374hfady73i";
       type = "gem";
     };
-    version = "3.180.3";
+    version = "3.181.0";
   };
   aws-sdk-ec2 = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0l2gdlqgq9y5r83svl4g7jpijpw3a6p7xsfdvhklb36mgmf61a0n";
+      sha256 = "1kl5b8m0ad2dxj2r0f5wkphfwhnpq820jbzrdmxyh20kivckv33c";
       type = "gem";
     };
-    version = "1.399.0";
+    version = "1.402.0";
   };
   aws-sdk-ec2instanceconnect = {
     groups = ["default"];
@@ -164,10 +164,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0iciakii0vcm16x0fivs5hwwhy3n8j1f9d7pimxr05yplnxizh6a";
+      sha256 = "1fbz259as60xnf563z9byp8blq5fsc81h92h3wicai4bmz45w4r5";
       type = "gem";
     };
-    version = "1.132.1";
+    version = "1.134.0";
   };
   aws-sdk-ssm = {
     groups = ["default"];
@@ -299,6 +299,16 @@
     };
     version = "1.4.1";
   };
+  date = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03skfikihpx37rc27vr3hwrb057gxnmdzxhmzd4bf4jpkl0r55w1";
+      type = "gem";
+    };
+    version = "3.3.3";
+  };
   dnsruby = {
     groups = ["default"];
     platforms = [];
@@ -644,12 +654,12 @@
     platforms = [];
     source = {
       fetchSubmodules = false;
-      rev = "e15c05b0bd8774e33c33c100965ec7e301e4f295";
-      sha256 = "15q85scigigiy498awcqa9cynmv977ay1904g8bgwg7rg42n0swg";
+      rev = "a97e8a0e2a3b15f3b3710f04def1178139ae0fa2";
+      sha256 = "13xbfww7kccr044wlw94s32krsca3nbrl8d0srsbia3kwzhhji2z";
       type = "git";
       url = "https://github.com/rapid7/metasploit-framework";
     };
-    version = "6.3.30";
+    version = "6.3.31";
   };
   metasploit-model = {
     groups = ["default"];
@@ -771,6 +781,16 @@
     };
     version = "0.1.6";
   };
+  net-imap = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lf7wqg7czhaj51qsnmn28j7jmcxhkh3m28rl1cjrqsgjxhwj7r3";
+      type = "gem";
+    };
+    version = "0.3.7";
+  };
   net-ldap = {
     groups = ["default"];
     platforms = [];
@@ -1037,10 +1057,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0in2b84qqmfnigx0li9bgi6l4knmgbj3a29fzm1zzb5jnv4r1gbr";
+      sha256 = "01pdn9sn7kawwrvrbr3vz44j287xbka8mm7nrv9cl510y8gzxi2x";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.7.2";
   };
   rake = {
     groups = ["default"];
@@ -1097,10 +1117,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1n6b6a1b18fscw9ff0fw5jk1l7kzw542r8444mm7d27zyx5v18sj";
+      sha256 = "0lv1nv7z63n4qmsm3h5h273m7daxngkcq8ynkk9j8lmn7jji98lb";
       type = "gem";
     };
-    version = "0.3.7";
+    version = "0.3.8";
   };
   rex-arch = {
     groups = ["default"];
@@ -1418,10 +1438,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "03bkn55qsng484iqwz2lmm6rkimj01vsvhwk661s3lnmpkl65lbp";
+      sha256 = "1k8i5pzjhcnyf0bhcyn5iixpfp4pz0556rcxwpglh6p0sr8s6nv5";
       type = "gem";
     };
-    version = "2.0.0";
+    version = "3.0.0";
   };
   strptime = {
     groups = ["default"];
diff --git a/nixpkgs/pkgs/tools/security/mpw/default.nix b/nixpkgs/pkgs/tools/security/mpw/default.nix
index 0fe45039b9be..8d6f7f4f3b1d 100644
--- a/nixpkgs/pkgs/tools/security/mpw/default.nix
+++ b/nixpkgs/pkgs/tools/security/mpw/default.nix
@@ -15,7 +15,7 @@ in stdenv.mkDerivation rec {
     inherit rev;
   };
 
-  sourceRoot = "./${src.name}/platform-independent/c/cli";
+  sourceRoot = "${src.name}/platform-independent/c/cli";
 
   postPatch = ''
     rm build
diff --git a/nixpkgs/pkgs/tools/security/nbtscanner/Cargo.lock.patch b/nixpkgs/pkgs/tools/security/nbtscanner/Cargo.lock.patch
new file mode 100644
index 000000000000..7ca50b7b4a11
--- /dev/null
+++ b/nixpkgs/pkgs/tools/security/nbtscanner/Cargo.lock.patch
@@ -0,0 +1,176 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 9b32d00..9767c48 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1,39 +1,44 @@
+ # This file is automatically @generated by Cargo.
+ # It is not intended for manual editing.
++version = 3
++
+ [[package]]
+ name = "ansi_term"
+-version = "0.10.2"
++version = "0.12.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "6b3568b48b7cefa6b8ce125f9bb4989e52fbcc29ebea88df04cc7c5f12f70455"
++checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
++dependencies = [
++ "winapi",
++]
+ 
+ [[package]]
+ name = "assert_matches"
+-version = "1.1.0"
++version = "1.5.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9e772942dccdf11b368c31e044e4fca9189f80a773d2f0808379de65894cbf57"
++checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9"
+ 
+ [[package]]
+ name = "atty"
+-version = "0.2.6"
++version = "0.2.14"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8352656fd42c30a0c3c89d26dea01e3b77c0ab2af18230835c15e2e13cd51859"
++checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
+ dependencies = [
++ "hermit-abi",
+  "libc",
+- "termion",
+  "winapi",
+ ]
+ 
+ [[package]]
+ name = "bitflags"
+-version = "1.0.1"
++version = "1.3.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b3c30d3802dfb7281680d6285f2ccdaa8c2d8fee41f93805dba5c4cf50dc23cf"
++checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+ 
+ [[package]]
+ name = "clap"
+-version = "2.29.1"
++version = "2.34.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8f4a2b3bb7ef3c672d7c13d15613211d5a6976b6892c598b0fcb5d40765f19c2"
++checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
+ dependencies = [
+  "ansi_term",
+  "atty",
+@@ -45,77 +50,60 @@ dependencies = [
+ ]
+ 
+ [[package]]
+-name = "libc"
+-version = "0.2.36"
++name = "hermit-abi"
++version = "0.1.19"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "1e5d97d6708edaa407429faa671b942dc0f2727222fb6b6539bf1db936e4b121"
+-
+-[[package]]
+-name = "nbtscanner"
+-version = "0.0.1"
++checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
+ dependencies = [
+- "assert_matches",
+- "clap",
++ "libc",
+ ]
+ 
+ [[package]]
+-name = "redox_syscall"
+-version = "0.1.37"
++name = "libc"
++version = "0.2.147"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "0d92eecebad22b767915e4d529f89f28ee96dbbf5a4810d2b844373f136417fd"
++checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
+ 
+ [[package]]
+-name = "redox_termios"
+-version = "0.1.1"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
++name = "nbtscanner"
++version = "0.0.2"
+ dependencies = [
+- "redox_syscall",
++ "assert_matches",
++ "clap",
+ ]
+ 
+ [[package]]
+ name = "strsim"
+-version = "0.6.0"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b4d15c810519a91cf877e7e36e63fe068815c678181439f2f29e2562147c3694"
+-
+-[[package]]
+-name = "termion"
+-version = "1.5.1"
++version = "0.8.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096"
+-dependencies = [
+- "libc",
+- "redox_syscall",
+- "redox_termios",
+-]
++checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+ 
+ [[package]]
+ name = "textwrap"
+-version = "0.9.0"
++version = "0.11.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c0b59b6b4b44d867f1370ef1bd91bfb262bf07bf0ae65c202ea2fbc16153b693"
++checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
+ dependencies = [
+  "unicode-width",
+ ]
+ 
+ [[package]]
+ name = "unicode-width"
+-version = "0.1.4"
++version = "0.1.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "bf3a113775714a22dcb774d8ea3655c53a32debae63a063acc00a91cc586245f"
++checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
+ 
+ [[package]]
+ name = "vec_map"
+-version = "0.8.0"
++version = "0.8.2"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "887b5b631c2ad01628bbbaa7dd4c869f80d3186688f8d0b6f58774fbe324988c"
++checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
+ 
+ [[package]]
+ name = "winapi"
+-version = "0.3.3"
++version = "0.3.9"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "b09fb3b6f248ea4cd42c9a65113a847d612e17505d6ebd1f7357ad68a8bf8693"
++checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+ dependencies = [
+  "winapi-i686-pc-windows-gnu",
+  "winapi-x86_64-pc-windows-gnu",
+@@ -123,12 +111,12 @@ dependencies = [
+ 
+ [[package]]
+ name = "winapi-i686-pc-windows-gnu"
+-version = "0.3.2"
++version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "ec6667f60c23eca65c561e63a13d81b44234c2e38a6b6c959025ee907ec614cc"
++checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+ 
+ [[package]]
+ name = "winapi-x86_64-pc-windows-gnu"
+-version = "0.3.2"
++version = "0.4.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "98f12c52b2630cd05d2c3ffd8e008f7f48252c042b4871c72aed9dc733b96668"
++checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
diff --git a/nixpkgs/pkgs/tools/security/nbtscanner/default.nix b/nixpkgs/pkgs/tools/security/nbtscanner/default.nix
index 6ad9fdd47708..51e9f085164b 100644
--- a/nixpkgs/pkgs/tools/security/nbtscanner/default.nix
+++ b/nixpkgs/pkgs/tools/security/nbtscanner/default.nix
@@ -7,16 +7,20 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "nbtscanner";
-  version = "0.0.1";
+  version = "0.0.2";
 
   src = fetchFromGitHub {
     owner = "jonkgrimes";
     repo = pname;
     rev = version;
-    sha256 = "06507a8y41v42cmvjpzimyrzdp972w15fjpc6c6750n1wa2wdl6c";
+    hash = "sha256-lnTTutOc829COwfNhBkSK8UpiNnGsm7Da53b+eSBt1Q=";
   };
 
-  cargoSha256 = "0cis54zmr2x0f4z664lmhk9dzx00hvds6jh3x417308sz7ak11gd";
+  cargoHash = "sha256-NffNQXKJ+b1w7Ar2M6UDev/AxruDEf8IGQ+mNdvU6e4=";
+
+  cargoPatches = [
+    ./Cargo.lock.patch
+  ];
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
diff --git a/nixpkgs/pkgs/tools/security/nitrokey-app/default.nix b/nixpkgs/pkgs/tools/security/nitrokey-app/default.nix
index 8f8991801f7c..d48047a7b1c6 100644
--- a/nixpkgs/pkgs/tools/security/nitrokey-app/default.nix
+++ b/nixpkgs/pkgs/tools/security/nitrokey-app/default.nix
@@ -3,10 +3,10 @@
 , cmake
 , fetchFromGitHub
 , pkg-config
-, qttranslations
 , wrapQtAppsHook
 , libnitrokey
 , cppcodec
+, qttools
 }:
 
 stdenv.mkDerivation rec {
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     cmake
     pkg-config
     wrapQtAppsHook
-    qttranslations
+    qttools
   ];
 
   cmakeFlags = [
diff --git a/nixpkgs/pkgs/tools/security/notation/default.nix b/nixpkgs/pkgs/tools/security/notation/default.nix
index 4c579f3f016d..845f3fbc4b8d 100644
--- a/nixpkgs/pkgs/tools/security/notation/default.nix
+++ b/nixpkgs/pkgs/tools/security/notation/default.nix
@@ -1,22 +1,32 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub, testers, notation }:
 
 buildGoModule rec {
   pname = "notation";
-  version = "1.0.0-rc.7";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "notaryproject";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-EM2QunSL88Am3zgKwgI94jET3xaVfvsa4MCtMZ3ejjU=";
+    hash = "sha256-mj+LCO6Q4kKfYewPl0R9axZB9O4Yy+GkLlUIDe6yhlI=";
   };
 
-  vendorHash = "sha256-88PCnIm7nQB8jLzrfVOyDLXWX7RZeT31n1cwvb4Qza0=";
+  vendorHash = "sha256-wQTRgOSOq0LeiSwF5eowaW4R2xCx+kEb0WQ+upsxdAA=";
 
   # This is a Go sub-module and cannot be built directly (e2e tests).
   excludedPackages = [ "./test" ];
 
-  ldflags = [ "-s" "-w" ];
+  ldflags = [
+    "-s"
+    "-w"
+    "-X github.com/notaryproject/notation/internal/version.Version=${version}"
+    "-X github.com/notaryproject/notation/internal/version.BuildMetadata="
+  ];
+
+  passthru.tests.version = testers.testVersion {
+    package = notation;
+    command = "notation version";
+  };
 
   meta = with lib; {
     description = "CLI tool to sign and verify OCI artifacts and container images";
diff --git a/nixpkgs/pkgs/tools/security/nuclei/default.nix b/nixpkgs/pkgs/tools/security/nuclei/default.nix
index f4d4a66e04ab..344ba03a361e 100644
--- a/nixpkgs/pkgs/tools/security/nuclei/default.nix
+++ b/nixpkgs/pkgs/tools/security/nuclei/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "nuclei";
-  version = "2.9.12";
+  version = "2.9.13";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-XLSNBFblgDkGGimwx0KqgHfDOekj7GH81EaKQ106v5U=";
+    hash = "sha256-mjb7U7F4OZ9nRjtLjZk1s7T+n/VqV/RPMbnGodxRVUE=";
   };
 
   vendorHash = "sha256-/1F2aY3cRLRz06s1KXQ6bt7UgaZgiXEjS/5stGi7xIw=";
diff --git a/nixpkgs/pkgs/tools/security/ospd-openvas/default.nix b/nixpkgs/pkgs/tools/security/ospd-openvas/default.nix
index c4a277f217b7..778d3d786625 100644
--- a/nixpkgs/pkgs/tools/security/ospd-openvas/default.nix
+++ b/nixpkgs/pkgs/tools/security/ospd-openvas/default.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "ospd-openvas";
-  version = "22.5.4";
+  version = "22.6.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "greenbone";
     repo = "ospd-openvas";
     rev = "refs/tags/v${version}";
-    hash = "sha256-T/MKx8yjRZ+r0ypnWzASGIQPKOAvzznWvaP7gwP+24M=";
+    hash = "sha256-1538XMNnerhfV3xQ8/TyoztCfWnkRvy0p6QtKMQb2p4=";
   };
 
   pythonRelaxDeps = [
diff --git a/nixpkgs/pkgs/tools/security/pass/default.nix b/nixpkgs/pkgs/tools/security/pass/default.nix
index 3437b19e3a30..735d025e2ea6 100644
--- a/nixpkgs/pkgs/tools/security/pass/default.nix
+++ b/nixpkgs/pkgs/tools/security/pass/default.nix
@@ -72,12 +72,7 @@ stdenv.mkDerivation rec {
 
   installFlags = [ "PREFIX=$(out)" "WITH_ALLCOMP=yes" ];
 
-  postInstall = ''
-    # Install Emacs Mode. NOTE: We can't install the necessary
-    # dependencies (s.el) here. The user has to do this themselves.
-    mkdir -p "$out/share/emacs/site-lisp"
-    cp "contrib/emacs/password-store.el" "$out/share/emacs/site-lisp/"
-  '' + lib.optionalString dmenuSupport ''
+  postInstall = lib.optionalString dmenuSupport ''
     cp "contrib/dmenu/passmenu" "$out/bin/"
   '';
 
diff --git a/nixpkgs/pkgs/tools/security/qdigidoc/default.nix b/nixpkgs/pkgs/tools/security/qdigidoc/default.nix
index 19ce14f915aa..8a8fa4496c38 100644
--- a/nixpkgs/pkgs/tools/security/qdigidoc/default.nix
+++ b/nixpkgs/pkgs/tools/security/qdigidoc/default.nix
@@ -10,8 +10,8 @@
 , openssl
 , pcsclite
 , qtbase
-, qttranslations
 , qtsvg
+, qttools
 }:
 
 mkDerivation rec {
@@ -29,7 +29,7 @@ mkDerivation rec {
     sha256 = "1cikz36w9phgczcqnwk4k3mx3kk919wy2327jksmfa4cjfjq4a8d";
   };
 
-  nativeBuildInputs = [ cmake gettext pkg-config ];
+  nativeBuildInputs = [ cmake gettext pkg-config qttools ];
 
   postPatch = ''
     substituteInPlace client/CMakeLists.txt \
@@ -44,7 +44,6 @@ mkDerivation rec {
     pcsclite
     qtbase
     qtsvg
-    qttranslations
   ];
 
   # qdigidoc4's `QPKCS11::reload()` dlopen()s "opensc-pkcs11.so" in QLibrary,
diff --git a/nixpkgs/pkgs/tools/security/semgrep/common.nix b/nixpkgs/pkgs/tools/security/semgrep/common.nix
index c144d7634cf7..da646461a20f 100644
--- a/nixpkgs/pkgs/tools/security/semgrep/common.nix
+++ b/nixpkgs/pkgs/tools/security/semgrep/common.nix
@@ -1,9 +1,9 @@
 { lib }:
 
 rec {
-  version = "1.35.0";
+  version = "1.37.0";
 
-  srcHash = "sha256-SUKswvY49Hxis5CwguXC5QSshG0sGKb23mz2IT1vNJI=";
+  srcHash = "sha256-oFJ43dq3DAhux0UEFDKFZnxruoRdOfCndKY6XgG3d5I=";
 
   # submodule dependencies
   # these are fetched so we:
@@ -13,8 +13,8 @@ rec {
     "cli/src/semgrep/semgrep_interfaces" = {
       owner = "returntocorp";
       repo = "semgrep-interfaces";
-      rev = "f7fed064dadb859f0b802b11fb60f7f77008c4d7";
-      hash = "sha256-EXYRc6p94QxkOBMPOdr608JqLY6kN1AanlRfOFXxPm8=";
+      rev = "331603197022625f50a64dd5e3029a96a5f03ada";
+      hash = "sha256-UAcWbTSCIdBGvgGSbdQ+miFOEuBvQ6m42MkU3VeErKY=";
     };
   };
 
@@ -25,15 +25,15 @@ rec {
   core = {
     x86_64-linux = {
       platform = "any";
-      hash = "sha256-ZqSbiuVKGjH+2fB0ReSw07CzTDSK35a8Adstzrvh8zA=";
+      hash = "sha256-Sj/6tzZMyRQAJL09X/3zgvdGTIhNibqO8usKsus9Xss=";
     };
     x86_64-darwin = {
       platform = "macosx_10_14_x86_64";
-      hash = "sha256-MusoteFarPJm8eQO7T/LrXDWUV0Wx4nw80ZvjG7HHhM=";
+      hash = "sha256-hC04VknZG6aYYNX7lqvkcOoVslewNqlYax+o1nV2TcM=";
     };
     aarch64-darwin = {
       platform = "macosx_11_0_arm64";
-      hash = "sha256-xN87fp5jqes/smMrtLbZowMIuTevpDJNFNeWdo0Seu4=";
+      hash = "sha256-0F+ndM4+0dnxf9acwWvGdIy9iYWSqixS9IzOxa95/yM=";
     };
   };
 
diff --git a/nixpkgs/pkgs/tools/security/sigma-cli/default.nix b/nixpkgs/pkgs/tools/security/sigma-cli/default.nix
index 3ff04a8a630f..bbed9910f251 100644
--- a/nixpkgs/pkgs/tools/security/sigma-cli/default.nix
+++ b/nixpkgs/pkgs/tools/security/sigma-cli/default.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "sigma-cli";
-  version = "0.7.2";
+  version = "0.7.7";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "SigmaHQ";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-yzo/BotNzTBjdkaXI1lHntpI5AyW5AbpFu3XtkWpHU4=";
+    hash = "sha256-Qqe9nJZfCb7xh93ERrV3XpqdtfeRECt7RDca9eQU3eQ=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/security/spire/default.nix b/nixpkgs/pkgs/tools/security/spire/default.nix
index 6c64e19043a2..13e42efa7888 100644
--- a/nixpkgs/pkgs/tools/security/spire/default.nix
+++ b/nixpkgs/pkgs/tools/security/spire/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "spire";
-  version = "1.7.1";
+  version = "1.7.2";
 
   outputs = [ "out" "agent" "server" ];
 
@@ -10,10 +10,10 @@ buildGoModule rec {
     owner = "spiffe";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-42UEFil9b2z8vfnA5oJvkqcPuSApi61m//RZ4pKZZ5w=";
+    sha256 = "sha256-3D7TlL4SulLAqpVIMJ4Yl2OWnNsMYMLVJqgGhOYMiio=";
   };
 
-  vendorHash = "sha256-H4INblBEWc/AuOn59lXmj5XX6mKrhmRTRVWtVhusW9k=";
+  vendorHash = "sha256-Vct++sjkkosBOY0Uho58MHSQoL5121kYbQTf1j+HFUk=";
 
   subPackages = [ "cmd/spire-agent" "cmd/spire-server" ];
 
diff --git a/nixpkgs/pkgs/tools/security/ssh-to-age/default.nix b/nixpkgs/pkgs/tools/security/ssh-to-age/default.nix
index e348b081bd12..52997fc24259 100644
--- a/nixpkgs/pkgs/tools/security/ssh-to-age/default.nix
+++ b/nixpkgs/pkgs/tools/security/ssh-to-age/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "ssh-to-age";
-  version = "1.1.4";
+  version = "1.1.5";
 
   src = fetchFromGitHub {
     owner = "Mic92";
     repo = "ssh-to-age";
     rev = version;
-    sha256 = "sha256-guBwwIXKAr9rtkiitFPs+usdzCQacnXcn5bTtQY77AY=";
+    sha256 = "sha256-vER4PG2LFi/NM9TmCffqsF3aR4ZycwWVeKls2fNupo0=";
   };
 
-  vendorHash = "sha256-NEHZ2ZakkO6Yw2pZdKIfCp9NzjgIRIVxARpcQOBGse4=";
+  vendorHash = "sha256-g8qVV2cd7nxBN/BGNz28gJbtNkCUDJDdSdupXxhFw9Q=";
 
   checkPhase = ''
     runHook preCheck
diff --git a/nixpkgs/pkgs/tools/security/swtpm/default.nix b/nixpkgs/pkgs/tools/security/swtpm/default.nix
index e71b88c8c3b9..d132e27a8059 100644
--- a/nixpkgs/pkgs/tools/security/swtpm/default.nix
+++ b/nixpkgs/pkgs/tools/security/swtpm/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "swtpm";
-  version = "0.8.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "stefanberger";
     repo = "swtpm";
     rev = "v${version}";
-    sha256 = "sha256-O+sHkmQ47FbqsgWpaqAc/j2AJ5xzsvpBj/p0Zea1nSI=";
+    sha256 = "sha256-QKR5S7FlMFDw4+VpyRdqixMWyzLpQkf3QCUceQvsliU=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/security/tlsx/default.nix b/nixpkgs/pkgs/tools/security/tlsx/default.nix
index 42c5a84cd3c3..91f21c99710b 100644
--- a/nixpkgs/pkgs/tools/security/tlsx/default.nix
+++ b/nixpkgs/pkgs/tools/security/tlsx/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "tlsx";
-  version = "1.1.3";
+  version = "1.1.4";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-dCtMfrkN43zJqztCobT3RSkn4crGigqzI6NSP8wrCf0=";
+    hash = "sha256-EMTNd5NOvaFbVxv31j3pBU//mWQQpThswCT8bMNx5Qw=";
   };
 
-  vendorHash = "sha256-33eVwWV9PnrP2MSPXTAcYe9ruJc5lauASc4uubBd9S4=";
+  vendorHash = "sha256-5fS10G1YxtyhMZcpaqYy9P6eX/xQABYVZj1HX6WxQxo=";
 
   # Tests require network access
   doCheck = false;
diff --git a/nixpkgs/pkgs/tools/security/trufflehog/default.nix b/nixpkgs/pkgs/tools/security/trufflehog/default.nix
index dce1996abb48..d5eea9398073 100644
--- a/nixpkgs/pkgs/tools/security/trufflehog/default.nix
+++ b/nixpkgs/pkgs/tools/security/trufflehog/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "trufflehog";
-  version = "3.53.0";
+  version = "3.54.1";
 
   src = fetchFromGitHub {
     owner = "trufflesecurity";
     repo = "trufflehog";
     rev = "refs/tags/v${version}";
-    hash = "sha256-O1MCl9chqiOGxOUYxaQNs0gXHgVkT8ZgSSTQXj63f90=";
+    hash = "sha256-wHgteAxFCnGY31Yda1qIxy4TLM51Lk+yy2BIHgfIzik=";
   };
 
-  vendorHash = "sha256-RHNt9GxqWb4EDKg5of5s88iUmJPI2w7i5hPoCFMmnew=";
+  vendorHash = "sha256-zYvKhhwN5TtJQxkkcY5U9LtTdMb97ucfksxpTMKH/Zc=";
 
   ldflags = [
     "-s"
diff --git a/nixpkgs/pkgs/tools/security/uncover/default.nix b/nixpkgs/pkgs/tools/security/uncover/default.nix
index 456c629c774b..1ea2f4144780 100644
--- a/nixpkgs/pkgs/tools/security/uncover/default.nix
+++ b/nixpkgs/pkgs/tools/security/uncover/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "uncover";
-  version = "1.0.5";
+  version = "1.0.6";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-TkNqy5436EH7P7F/kKaFrAuG6D+WwkIJzV5+a/H3aYM=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-FJtd73z6Cc56+nBderYncjrac3xRydDeoiJqn8xW29U=";
   };
 
-  vendorHash = "sha256-P2XlFvFkrmH8ATWP1QXtNsUwCT22j0LmzlMuob6LlmY=";
+  vendorHash = "sha256-mpojOzGedkTthD+fHl9Uhul7tOCN1EGIin+7USoaNmE=";
 
   meta = with lib; {
     description = "API wrapper to search for exposed hosts";
diff --git a/nixpkgs/pkgs/tools/security/vals/default.nix b/nixpkgs/pkgs/tools/security/vals/default.nix
index 489d0e6d93f3..c835de3444cb 100644
--- a/nixpkgs/pkgs/tools/security/vals/default.nix
+++ b/nixpkgs/pkgs/tools/security/vals/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "vals";
-  version = "0.26.2";
+  version = "0.27.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "variantdev";
     repo = pname;
-    sha256 = "sha256-WTUdb2LF/50KT3BqwbvKu4TFocbYBdEAoD3IQiPD2bs=";
+    sha256 = "sha256-EYp+c3MbkdMIyo/2kHsKg9hjByqm6VdNxLcsl4dJrcg=";
   };
 
-  vendorHash = "sha256-6DJiqDEgEHQbyIt4iShoBnagBvspd3W3vD56/FGjESs=";
+  vendorHash = "sha256-iNwQUwcF6iKYdqvy4t5xgOvNdhR+Vx+J5UHZzkNOed4=";
 
   ldflags = [
     "-s"
diff --git a/nixpkgs/pkgs/tools/security/web-eid-app/default.nix b/nixpkgs/pkgs/tools/security/web-eid-app/default.nix
index f392fb0147bd..fd9c4cc319e7 100644
--- a/nixpkgs/pkgs/tools/security/web-eid-app/default.nix
+++ b/nixpkgs/pkgs/tools/security/web-eid-app/default.nix
@@ -5,30 +5,30 @@
 , gtest
 , pcsclite
 , pkg-config
-, qttranslations
+, qttools
 }:
 
 mkDerivation rec {
   pname = "web-eid-app";
-  version = "2.3.1";
+  version = "2.4.0";
 
   src = fetchFromGitHub {
     owner = "web-eid";
     repo = "web-eid-app";
     rev = "v${version}";
-    sha256 = "sha256-X6/vfCDEGXFn05DUSyy7koGVxUAPJ0lv8dnTaoansKk=";
+    sha256 = "sha256-xWwguxs/121BFF1zhb/HxS9b1vTwQRemhPKOfHEXVZQ=";
     fetchSubmodules = true;
   };
 
   nativeBuildInputs = [
     cmake
     pkg-config
+    qttools
   ];
 
   buildInputs = [
     gtest # required during build of lib/libelectronic-id/lib/libpcsc-cpp
     pcsclite
-    qttranslations
   ];
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/system/bottom/default.nix b/nixpkgs/pkgs/tools/system/bottom/default.nix
index 7fa64aae7d25..223d4b0f2c96 100644
--- a/nixpkgs/pkgs/tools/system/bottom/default.nix
+++ b/nixpkgs/pkgs/tools/system/bottom/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "bottom";
-  version = "0.9.4";
+  version = "0.9.6";
 
   src = fetchFromGitHub {
     owner = "ClementTsang";
     repo = pname;
     rev = version;
-    hash = "sha256-9WQdudO2tIvxDHfJ87zvJeMfpuFSr4D5zGteL7Od2fQ=";
+    hash = "sha256-czOYEZevZD7GfExmqwB7vhLXl6+etag1PjZFA2G9aGA=";
   };
 
-  cargoHash = "sha256-aRN6V6r+JYi6yUcXei2f7l7oZ+8IkUmw1sgOwZJOtIE=";
+  cargoHash = "sha256-RDOGf1jujZikcRXRtL71BUGgmZyt7vQOTk1LkKpXDuo=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/nixpkgs/pkgs/tools/system/daemon/default.nix b/nixpkgs/pkgs/tools/system/daemon/default.nix
index 3c8689416c2f..7d63b12850ea 100644
--- a/nixpkgs/pkgs/tools/system/daemon/default.nix
+++ b/nixpkgs/pkgs/tools/system/daemon/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "daemon";
-  version = "0.8.2";
+  version = "0.8.4";
 
   src = fetchurl {
     url = "http://libslack.org/daemon/download/daemon-${version}.tar.gz";
-    sha256 = "sha256-s0s3VDu6Q70Ibln0t1TIECOArlwXKLmHyJDV2ktM88o=";
+    sha256 = "sha256-+iiFmtNBywoLASwRwnGBT4cEggE7SfcQYAMh03mIfNE=";
   };
 
   makeFlags = [
diff --git a/nixpkgs/pkgs/tools/system/htop/default.nix b/nixpkgs/pkgs/tools/system/htop/default.nix
index c00f25780839..50c6ea461f36 100644
--- a/nixpkgs/pkgs/tools/system/htop/default.nix
+++ b/nixpkgs/pkgs/tools/system/htop/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
       "--enable-capabilities"
       "--enable-delayacct"
     ]
-    ++ lib.optional sensorsSupport "--with-sensors"
+    ++ lib.optional sensorsSupport "--enable-sensors"
   ;
 
   postFixup =
diff --git a/nixpkgs/pkgs/tools/system/lr/default.nix b/nixpkgs/pkgs/tools/system/lr/default.nix
index 2bb49bf9803d..806b329196a2 100644
--- a/nixpkgs/pkgs/tools/system/lr/default.nix
+++ b/nixpkgs/pkgs/tools/system/lr/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lr";
-  version = "1.5.1";
+  version = "1.6";
 
   src = fetchFromGitHub {
     owner = "chneukirchen";
     repo = "lr";
     rev = "v${version}";
-    sha256 = "1wv2acm4r5y5gg6f64v2hiwpg1f3lnr4fy1a9zssw77fmdc7ys3j";
+    sha256 = "sha256-TcP0jLFemdmWzGa4/RX7N6xUUTgKsI7IEOD7GfuuPWI=";
   };
 
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/nixpkgs/pkgs/tools/system/netdata/default.nix b/nixpkgs/pkgs/tools/system/netdata/default.nix
index 420cb2880af6..e61f3673bc87 100644
--- a/nixpkgs/pkgs/tools/system/netdata/default.nix
+++ b/nixpkgs/pkgs/tools/system/netdata/default.nix
@@ -17,14 +17,14 @@
 
 stdenv.mkDerivation rec {
   # Don't forget to update go.d.plugin.nix as well
-  version = "1.42.0";
+  version = "1.42.1";
   pname = "netdata";
 
   src = fetchFromGitHub {
     owner = "netdata";
     repo = "netdata";
     rev = "v${version}";
-    hash = "sha256-Gd+lZVi0bU/7dXCZaPyRwWKkFOm+QNbuwgxcXS2YO7E=";
+    hash = "sha256-uVr897LF5F+ZGz2rzrTBLhoOOFE+BrE69xztQM8Lq8Q=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/tools/system/nvitop/default.nix b/nixpkgs/pkgs/tools/system/nvitop/default.nix
index dc1adc7ccdd1..21fa53dc7034 100644
--- a/nixpkgs/pkgs/tools/system/nvitop/default.nix
+++ b/nixpkgs/pkgs/tools/system/nvitop/default.nix
@@ -5,13 +5,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "nvitop";
-  version = "1.2.0";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "XuehaiPan";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-Za2NJ4gx+aE/cfl2wzbwLxIFNL1UzgKVbb6VqopkNxs=";
+    hash = "sha256-nHJ2m5Q0IWl0nx13iGBkHsHj2YdPS+33kLUBsjbpyuM=";
   };
 
   pythonRelaxDeps = [ "nvidia-ml-py" ];
diff --git a/nixpkgs/pkgs/tools/system/nvtop/default.nix b/nixpkgs/pkgs/tools/system/nvtop/default.nix
index 44ecbd39d471..1ab520cefac4 100644
--- a/nixpkgs/pkgs/tools/system/nvtop/default.nix
+++ b/nixpkgs/pkgs/tools/system/nvtop/default.nix
@@ -11,14 +11,15 @@
 , udev
 , addOpenGLRunpath
 , amd ? true
+, intel ? true
+, msm ? true
 , nvidia ? true
 }:
 
 let
-  pname-suffix = if amd && nvidia then "" else if amd then "-amd" else "-nvidia";
   nvidia-postFixup = "addOpenGLRunpath $out/bin/nvtop";
   libPath = lib.makeLibraryPath [ libdrm ncurses udev ];
-  amd-postFixup = ''
+  drm-postFixup = ''
     patchelf \
       --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
       --set-rpath "${libPath}" \
@@ -26,14 +27,14 @@ let
   '';
 in
 stdenv.mkDerivation rec {
-  pname = "nvtop" + pname-suffix;
-  version = "3.0.1";
+  pname = "nvtop";
+  version = "3.0.2";
 
   src = fetchFromGitHub {
     owner = "Syllo";
     repo = "nvtop";
     rev = version;
-    hash = "sha256-vLvt2sankpQWAVZBPo3OePs4LDy7YfVnMkZLfN6ERAc=";
+    hash = "sha256-SHKdjzbc3ZZfOW2p8RLFRKKBfLnO+Z8/bKVxcdLLqxw=";
   };
 
   cmakeFlags = with lib; [
@@ -43,17 +44,19 @@ stdenv.mkDerivation rec {
   ] ++ optional nvidia "-DNVML_INCLUDE_DIRS=${cudatoolkit}/include"
   ++ optional nvidia "-DNVML_LIBRARIES=${cudatoolkit}/targets/x86_64-linux/lib/stubs/libnvidia-ml.so"
   ++ optional (!amd) "-DAMDGPU_SUPPORT=OFF"
+  ++ optional (!intel) "-DINTEL_SUPPORT=OFF"
+  ++ optional (!msm) "-DMSM_SUPPORT=OFF"
   ++ optional (!nvidia) "-DNVIDIA_SUPPORT=OFF"
-  ++ optional amd "-DLibdrm_INCLUDE_DIRS=${libdrm}/lib/stubs/libdrm.so.2"
+  ++ optional (amd || msm) "-DLibdrm_INCLUDE_DIRS=${libdrm}/lib/stubs/libdrm.so.2"
   ;
   nativeBuildInputs = [ cmake gtest ] ++ lib.optional nvidia addOpenGLRunpath;
   buildInputs = with lib; [ ncurses udev ]
     ++ optional nvidia cudatoolkit
-    ++ optional amd libdrm
+    ++ optional (amd || msm) libdrm
   ;
 
   # ordering of fixups is important
-  postFixup = (lib.optionalString amd amd-postFixup) + (lib.optionalString nvidia nvidia-postFixup);
+  postFixup = (lib.optionalString (amd || msm) drm-postFixup) + (lib.optionalString nvidia nvidia-postFixup);
 
   doCheck = true;
 
@@ -66,9 +69,10 @@ stdenv.mkDerivation rec {
   };
 
   meta = with lib; {
-    description = "A (h)top like task monitor for AMD, Intel and NVIDIA GPUs";
+    description = "A (h)top like task monitor for AMD, Adreno, Intel and NVIDIA GPUs";
     longDescription = ''
-      Nvtop stands for Neat Videocard TOP, a (h)top like task monitor for AMD, Intel and NVIDIA GPUs. It can handle multiple GPUs and print information about them in a htop familiar way.
+      Nvtop stands for Neat Videocard TOP, a (h)top like task monitor for AMD, Adreno, Intel and NVIDIA GPUs.
+      It can handle multiple GPUs and print information about them in a htop familiar way.
     '';
     homepage = "https://github.com/Syllo/nvtop";
     changelog = "https://github.com/Syllo/nvtop/releases/tag/${version}";
diff --git a/nixpkgs/pkgs/tools/system/rex/default.nix b/nixpkgs/pkgs/tools/system/rex/default.nix
index 0befdbd2a1e0..980874322bb8 100644
--- a/nixpkgs/pkgs/tools/system/rex/default.nix
+++ b/nixpkgs/pkgs/tools/system/rex/default.nix
@@ -73,6 +73,10 @@ perlPackages.buildPerlPackage rec {
 
   outputs = [ "out" ];
 
+  postPatch = ''
+    patchShebangs bin
+  '';
+
   fixupPhase = ''
     for sh in bash zsh; do
       substituteInPlace ./share/rex-tab-completion.$sh \
diff --git a/nixpkgs/pkgs/tools/system/rsyslog/default.nix b/nixpkgs/pkgs/tools/system/rsyslog/default.nix
index ceb83ff202fc..b406c5b4a312 100644
--- a/nixpkgs/pkgs/tools/system/rsyslog/default.nix
+++ b/nixpkgs/pkgs/tools/system/rsyslog/default.nix
@@ -61,11 +61,11 @@
 
 stdenv.mkDerivation rec {
   pname = "rsyslog";
-  version = "8.2306.0";
+  version = "8.2308.0";
 
   src = fetchurl {
     url = "https://www.rsyslog.com/files/download/rsyslog/${pname}-${version}.tar.gz";
-    hash = "sha256-9ig++q3GCVQKVua+yIo2LJZud/Kf5I5rc0vWwRI+C+U=";
+    hash = "sha256-AghrkSHocs6mnl0PbI4tjr/zMjSzytVQNmU3jTry48k=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/system/sg3_utils/default.nix b/nixpkgs/pkgs/tools/system/sg3_utils/default.nix
index 5aca34e344ba..3975a5927f47 100644
--- a/nixpkgs/pkgs/tools/system/sg3_utils/default.nix
+++ b/nixpkgs/pkgs/tools/system/sg3_utils/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "sg3_utils";
-  version = "1.47";
+  version = "1.48";
 
   src = fetchurl {
     url = "https://sg.danny.cz/sg/p/sg3_utils-${version}.tgz";
-    sha256 = "sha256-hnPH+sqEm2s0dkMy0qqR9y2wW/9zgruDbQaIeVGZw+E=";
+    sha256 = "sha256-1itsPPIDkPpzVwRDkAhBZtJfHZMqETXEULaf5cKD13M=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/system/stress-ng/default.nix b/nixpkgs/pkgs/tools/system/stress-ng/default.nix
index 889b061ac137..f93716ff4332 100644
--- a/nixpkgs/pkgs/tools/system/stress-ng/default.nix
+++ b/nixpkgs/pkgs/tools/system/stress-ng/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "stress-ng";
-  version = "0.15.10";
+  version = "0.16.04";
 
   src = fetchFromGitHub {
     owner = "ColinIanKing";
     repo = pname;
     rev = "V${version}";
-    hash = "sha256-JRdqbZAWcPBNspziM/qo2ioIaJOrMgLmx10w7NNaps0=";
+    hash = "sha256-Qr1t+xyl0aS2tSB+DyS7oXOkbcJRaSabS6g/qc8hdWc=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/system/thermald/default.nix b/nixpkgs/pkgs/tools/system/thermald/default.nix
index b4696d704224..9f667bb4203e 100644
--- a/nixpkgs/pkgs/tools/system/thermald/default.nix
+++ b/nixpkgs/pkgs/tools/system/thermald/default.nix
@@ -18,7 +18,7 @@
 
 stdenv.mkDerivation rec {
   pname = "thermald";
-  version = "2.5.3";
+  version = "2.5.4";
 
   outputs = [ "out" "devdoc" ];
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     owner = "intel";
     repo = "thermal_daemon";
     rev = "v${version}";
-    sha256 = "sha256-rYhf+mbELNmm6gVS7eH1EEY73Dsw1vZLFUbaTOU980I=";
+    sha256 = "sha256-5UILKdv+HhilY+NsbMwqqvYjbM3mAeec/lX+CGY0CPE=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/tools/text/difftastic/Cargo.lock b/nixpkgs/pkgs/tools/text/difftastic/Cargo.lock
index 1d0974afe898..549f575426c4 100644
--- a/nixpkgs/pkgs/tools/text/difftastic/Cargo.lock
+++ b/nixpkgs/pkgs/tools/text/difftastic/Cargo.lock
@@ -84,9 +84,12 @@ checksum = "72feb31ffc86498dacdbd0fcebb56138e7177a8cc5cea4516031d15ae85a742e"
 
 [[package]]
 name = "cc"
-version = "1.0.78"
+version = "1.0.83"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a20104e2335ce8a659d6dd92a51a767a0c062599c73b343fd152cb401e828c3d"
+checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
+dependencies = [
+ "libc",
+]
 
 [[package]]
 name = "cfg-if"
@@ -234,7 +237,7 @@ checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8"
 
 [[package]]
 name = "difftastic"
-version = "0.50.0"
+version = "0.51.1"
 dependencies = [
  "assert_cmd",
  "bumpalo",
@@ -245,7 +248,7 @@ dependencies = [
  "glob",
  "hashbrown 0.12.3",
  "humansize",
- "itertools",
+ "itertools 0.11.0",
  "lazy_static",
  "libc",
  "libmimalloc-sys",
@@ -259,6 +262,8 @@ dependencies = [
  "rayon",
  "regex",
  "rustc-hash",
+ "serde",
+ "serde_json",
  "strsim",
  "strum",
  "tree-sitter",
@@ -401,6 +406,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "itertools"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
+dependencies = [
+ "either",
+]
+
+[[package]]
+name = "itoa"
+version = "1.0.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
+
+[[package]]
 name = "lazy_static"
 version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -591,7 +611,7 @@ checksum = "a5aab5be6e4732b473071984b3164dbbfb7a3674d30ea5ff44410b6bcd960c3c"
 dependencies = [
  "difflib",
  "float-cmp",
- "itertools",
+ "itertools 0.10.3",
  "normalize-line-endings",
  "predicates-core",
  "regex",
@@ -732,6 +752,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06"
 
 [[package]]
+name = "ryu"
+version = "1.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
+
+[[package]]
 name = "same-file"
 version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -747,6 +773,37 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
 
 [[package]]
+name = "serde"
+version = "1.0.176"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "76dc28c9523c5d70816e393136b86d48909cfb27cecaa902d338c19ed47164dc"
+dependencies = [
+ "serde_derive",
+]
+
+[[package]]
+name = "serde_derive"
+version = "1.0.176"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a4e7b8c5dc823e3b90651ff1d3808419cd14e5ad76de04feaf37da114e7a306f"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.27",
+]
+
+[[package]]
+name = "serde_json"
+version = "1.0.104"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "076066c5f1078eac5b722a31827a8832fe108bed65dfa75e233c89f8206e976c"
+dependencies = [
+ "itoa",
+ "ryu",
+ "serde",
+]
+
+[[package]]
 name = "signal-hook"
 version = "0.3.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -891,9 +948,9 @@ dependencies = [
 
 [[package]]
 name = "typed-arena"
-version = "2.0.1"
+version = "2.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0685c84d5d54d1c26f7d3eb96cd41550adb97baed141a761cf335d3d33bcd0ae"
+checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a"
 
 [[package]]
 name = "unicode-ident"
diff --git a/nixpkgs/pkgs/tools/text/difftastic/default.nix b/nixpkgs/pkgs/tools/text/difftastic/default.nix
index 520afe5a3024..77fa6334f16e 100644
--- a/nixpkgs/pkgs/tools/text/difftastic/default.nix
+++ b/nixpkgs/pkgs/tools/text/difftastic/default.nix
@@ -16,13 +16,13 @@ in
 
 rustPlatform.buildRustPackage rec {
   pname = "difftastic";
-  version = "0.50.0";
+  version = "0.51.1";
 
   src = fetchFromGitHub {
     owner = "wilfred";
     repo = pname;
     rev = version;
-    hash = "sha256-CC06Bryn5VNEsW4Wwbo+ubifizCWgpWUE1FsAozZcdg=";
+    hash = "sha256-u03UL5QB0mdMTgRtxVe4pgLlCeLx1cG7czo7uBKQI84=";
   };
 
   cargoLock = {
diff --git a/nixpkgs/pkgs/tools/text/dos2unix/default.nix b/nixpkgs/pkgs/tools/text/dos2unix/default.nix
index a76432d76c05..5505893b4ec6 100644
--- a/nixpkgs/pkgs/tools/text/dos2unix/default.nix
+++ b/nixpkgs/pkgs/tools/text/dos2unix/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dos2unix";
-  version = "7.5.0";
+  version = "7.5.1";
 
   src = fetchurl {
     url = "https://waterlan.home.xs4all.nl/dos2unix/${pname}-${version}.tar.gz";
-    sha256 = "sha256-ejsB0B4hTWLCs+BMOpLg3ccoo4VWbkwDVu+mb9brla8=";
+    sha256 = "sha256-2gd4i7LgKbDWP2Rx0Wb2hSis2Nos8UgjoYjoqdXB/BU=";
   };
 
   nativeBuildInputs = [ perl gettext ];
diff --git a/nixpkgs/pkgs/tools/text/gtree/default.nix b/nixpkgs/pkgs/tools/text/gtree/default.nix
index db51febfdc4d..17e04df84453 100644
--- a/nixpkgs/pkgs/tools/text/gtree/default.nix
+++ b/nixpkgs/pkgs/tools/text/gtree/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "gtree";
-  version = "1.9.5";
+  version = "1.9.6";
 
   src = fetchFromGitHub {
     owner = "ddddddO";
     repo = "gtree";
     rev = "v${version}";
-    hash = "sha256-qbAus0RgocbkC9eOmoiAOoyZw58LPDZlJgoRA/SzhQI=";
+    hash = "sha256-eU5mMUDUh5eMzd4oLc0XOHapt1hhODWXQJ+OJAy3tWc=";
   };
 
   vendorHash = "sha256-QxcDa499XV43p8fstENOtfe3iZ176R5/Ub5iovXlYIM=";
diff --git a/nixpkgs/pkgs/tools/text/languagetool-rust/default.nix b/nixpkgs/pkgs/tools/text/languagetool-rust/default.nix
index 013a24686824..eda1060320c8 100644
--- a/nixpkgs/pkgs/tools/text/languagetool-rust/default.nix
+++ b/nixpkgs/pkgs/tools/text/languagetool-rust/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "languagetool-rust";
-  version = "2.1.3";
+  version = "2.1.4";
 
   src = fetchFromGitHub {
     owner = "jeertmans";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-iiJSdr7TF1f8/Ve+OKbTDHYWdFkd2IEOzp7Lhlpwb50=";
+    hash = "sha256-YsVK72q+A9T00u9bXIUfGDhwQl5kiLMec6onbp9YKkg=";
   };
 
-  cargoHash = "sha256-oCRlWYCTmJWTi6LCDEKimsLmqm3JTaQEsKJXrvQP/p8=";
+  cargoHash = "sha256-Yit6zWWEcH5LXpcvy9EXUvRNz+JsyW10fauSNBf1BoU=";
 
   buildFeatures = [ "full" ];
 
diff --git a/nixpkgs/pkgs/tools/text/mdbook-i18n-helpers/default.nix b/nixpkgs/pkgs/tools/text/mdbook-i18n-helpers/default.nix
index 4231f1ee65a3..6e4ef6d01ad1 100644
--- a/nixpkgs/pkgs/tools/text/mdbook-i18n-helpers/default.nix
+++ b/nixpkgs/pkgs/tools/text/mdbook-i18n-helpers/default.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook-i18n-helpers";
-  version = "0.2.0";
+  version = "0.2.2";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "mdbook-i18n-helpers";
     rev = "refs/tags/${version}";
-    hash = "sha256-j5nbAgbCuz8urvdYPTTtGDnWwY/FxKNnwbeSTcuyIKw=";
+    hash = "sha256-ea/z5+QAvQVacP2Yxz9hGh8REjsNbp/rfkDV0f9KyPg=";
   };
 
-  cargoHash = "sha256-lDHq4KRYIeCddhFGQDWOx9olcOASjOke/h22Qm4wv6Q=";
+  cargoHash = "sha256-4Bf6R8sVwJCFiF+j+WePxWy43KuArIuMCzXKc58+TAw=";
 
   meta = with lib; {
     description = "Helpers for a mdbook i18n workflow based on Gettext";
diff --git a/nixpkgs/pkgs/tools/text/mmdoc/default.nix b/nixpkgs/pkgs/tools/text/mmdoc/default.nix
index a570d0b9558e..312a4f94b22f 100644
--- a/nixpkgs/pkgs/tools/text/mmdoc/default.nix
+++ b/nixpkgs/pkgs/tools/text/mmdoc/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mmdoc";
-  version = "0.15.0";
+  version = "0.19.0";
 
   src = fetchFromGitHub {
     owner = "ryantm";
     repo = "mmdoc";
     rev = version;
-    hash = "sha256-xOi91BSQh+AN13V6YyAzOe7kUsyPAvUKWTJ+PUPlPJQ=";
+    hash = "sha256-W48ndjWrdJphvGDDUtcLZLBzsTfeLCi3k6UrHVroBcA=";
   };
 
   nativeBuildInputs = [ ninja meson pkg-config xxd ];
diff --git a/nixpkgs/pkgs/tools/text/riffdiff/default.nix b/nixpkgs/pkgs/tools/text/riffdiff/default.nix
index f78ddaf9c829..c26966a15817 100644
--- a/nixpkgs/pkgs/tools/text/riffdiff/default.nix
+++ b/nixpkgs/pkgs/tools/text/riffdiff/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "riffdiff";
-  version = "2.25.0";
+  version = "2.25.2";
 
   src = fetchFromGitHub {
     owner = "walles";
     repo = "riff";
     rev = version;
-    hash = "sha256-/V9xp5ew+oL3AIBsgDaAa6LE5Ko/ae7VW47QATtqG1I=";
+    hash = "sha256-JZWgI4yAsk+jtTyS3QZBxdAOPYmUxb7pn1SbcUeCh6Y=";
   };
 
-  cargoHash = "sha256-pWMsmQ4JqlHgdP5TUgwZ6fwdEjKrilI5Rla6XLjaBF8=";
+  cargoHash = "sha256-Z33CGF02rPf24LaYh+wEmmGgPPw+oxMNCgMzCrUEKqk=";
 
   meta = with lib; {
     description = "A diff filter highlighting which line parts have changed";
diff --git a/nixpkgs/pkgs/tools/text/tesh/default.nix b/nixpkgs/pkgs/tools/text/tesh/default.nix
index 7961b120d213..0b702ae0052a 100644
--- a/nixpkgs/pkgs/tools/text/tesh/default.nix
+++ b/nixpkgs/pkgs/tools/text/tesh/default.nix
@@ -1,4 +1,4 @@
-{ python3Packages, fetchFromGitHub }:
+{ python3Packages, fetchFromGitHub, fetchpatch }:
 
 let
   version = "0.3.0";
@@ -12,13 +12,23 @@ in python3Packages.buildPythonPackage rec {
     owner = "OceanSprint";
     repo = "tesh";
     rev = version;
-    sha256 = "sha256-/CSYz2YXbjKZszb1HMOCS+srVJ+TcFSeLeuz9VvtlI4=";
+    hash = "sha256-/CSYz2YXbjKZszb1HMOCS+srVJ+TcFSeLeuz9VvtlI4=";
   };
 
-  prePatch = ''
-      substituteInPlace pyproject.toml \
-      --replace "poetry.masonry" "poetry.core.masonry"
-  '';
+  patches = [
+    # https://github.com/OceanSprint/tesh/pull/49
+    (fetchpatch {
+      name = "replace-poetry-with-poetry-core-1.patch";
+      url = "https://github.com/OceanSprint/tesh/commit/49b90f5a3c9cf111931393248943b1da966dc3ec.patch";
+      hash = "sha256-s+eGO4NXTGbyXcLP37kCg4GDrjAsYIlOwNDR1Q7+1Uc=";
+    })
+    # https://github.com/OceanSprint/tesh/pull/50
+    (fetchpatch {
+      name = "replace-poetry-with-poetry-core-2.patch";
+      url = "https://github.com/OceanSprint/tesh/commit/66798b54f28dc0b72159ee3a2144895cf945eaf0.patch";
+      hash = "sha256-f3uL7TZlkrTOWYihwWNfhrY5/xlBrclAMnbxRNXCGJw=";
+    })
+  ];
 
   checkInputs = [ python3Packages.pytest ];
   nativeBuildInputs = [ python3Packages.poetry-core ];
diff --git a/nixpkgs/pkgs/tools/text/ugrep/default.nix b/nixpkgs/pkgs/tools/text/ugrep/default.nix
index afc986e9c597..159c8ca594ac 100644
--- a/nixpkgs/pkgs/tools/text/ugrep/default.nix
+++ b/nixpkgs/pkgs/tools/text/ugrep/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "ugrep";
-  version = "4.0.2";
+  version = "4.0.5";
 
   src = fetchFromGitHub {
     owner = "Genivia";
     repo = "ugrep";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-g+COkAdXc1Z3yrObbeBU1wtu9Tr3mEhxrf6Qmy3JywY=";
+    hash = "sha256-7cE8kbj8ChvHOPb1F7Fj9talg82nXpXRPt4oBSGSWZw=";
   };
 
   buildInputs = [
diff --git a/nixpkgs/pkgs/tools/text/xml/xml2/default.nix b/nixpkgs/pkgs/tools/text/xml/xml2/default.nix
index 265ab10e5ac8..d469078c91dc 100644
--- a/nixpkgs/pkgs/tools/text/xml/xml2/default.nix
+++ b/nixpkgs/pkgs/tools/text/xml/xml2/default.nix
@@ -12,6 +12,25 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ libxml2 ];
 
+  doInstallCheck = true;
+  installCheckPhase = ''
+    runHook preInstallCheck
+
+    echo -n 'checking csv2 and 2csv...'
+    $out/bin/csv2 -f <<< $'a,b\n1,2' \
+      | $out/bin/2csv record a b \
+      | grep -qF '1,2'
+    echo ' ok'
+
+    echo -n 'checking xml2 and 2xml...'
+    $out/bin/xml2 <<< $'<a>abc</a>' \
+      | $out/bin/2xml \
+      | grep -qF '<a>abc</a>'
+    echo ' ok'
+
+    runHook postInstallCheck
+  '';
+
   meta = with lib; {
     homepage = "https://web.archive.org/web/20160515005047/http://dan.egnor.name:80/xml2";
     description = "Tools for command line processing of XML, HTML, and CSV";
diff --git a/nixpkgs/pkgs/tools/text/yx/default.nix b/nixpkgs/pkgs/tools/text/yx/default.nix
new file mode 100644
index 000000000000..bff2b955fb42
--- /dev/null
+++ b/nixpkgs/pkgs/tools/text/yx/default.nix
@@ -0,0 +1,31 @@
+{ lib, stdenv, fetchFromGitLab, libyaml }:
+stdenv.mkDerivation rec {
+  pname = "yx";
+  version = "1.0.0";
+
+  src = fetchFromGitLab {
+    owner = "tomalok";
+    repo = pname;
+    rev = version;
+    sha256 = "sha256-oY61V9xP0DwRooabzi0XtaFsQa2GwYbuvxfERXQtYcA=";
+  };
+
+  makeFlags = [
+    "PREFIX=${placeholder "out"}"
+  ];
+
+  strictDeps = true;
+
+  buildInputs = [ libyaml ];
+
+  doCheck = true;
+
+  meta = with lib; {
+    description = "YAML Data Extraction Tool";
+    homepage = "https://gitlab.com/tomalok/yx";
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ twz123 ];
+    mainProgram = pname;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/typesetting/tex/texlive/build-texlive-package.nix b/nixpkgs/pkgs/tools/typesetting/tex/texlive/build-texlive-package.nix
index 1415d2d39f9f..2e9572f168a5 100644
--- a/nixpkgs/pkgs/tools/typesetting/tex/texlive/build-texlive-package.nix
+++ b/nixpkgs/pkgs/tools/typesetting/tex/texlive/build-texlive-package.nix
@@ -29,6 +29,7 @@
 , hasManpages ? false
 , hasRunfiles ? false
 , hasTlpkg ? false
+, extraNativeBuildInputs ? [ ]
 , ...
 }@args:
 
@@ -119,6 +120,7 @@ let
         inherit meta;
         # shebang interpreters
         buildInputs = (args.extraBuildInputs or [ ]) ++ [ bash perl ] ++ (lib.attrVals (args.scriptExts or [ ]) extToInput);
+        nativeBuildInputs = extraNativeBuildInputs;
         # absolute scripts folder
         scriptsFolder = lib.optionalString (run ? outPath) (run.outPath + "/scripts/" + args.scriptsFolder or pname);
         # binaries info
diff --git a/nixpkgs/pkgs/tools/typesetting/tex/texlive/combine.nix b/nixpkgs/pkgs/tools/typesetting/tex/texlive/combine.nix
index 1821d1c090de..8a3265727168 100644
--- a/nixpkgs/pkgs/tools/typesetting/tex/texlive/combine.nix
+++ b/nixpkgs/pkgs/tools/typesetting/tex/texlive/combine.nix
@@ -1,4 +1,6 @@
-params: with params;
+{ lib, buildEnv, runCommand, writeText, makeWrapper, libfaketime, makeFontsConf
+, perl, bash, coreutils, gnused, gnugrep, gawk, ghostscript
+, bin, tl }:
 # combine =
 args@{
   pkgFilter ? (pkg: pkg.tlType == "run" || pkg.tlType == "bin" || pkg.pname == "core"
@@ -8,6 +10,22 @@ args@{
 , ...
 }:
 let
+  # combine a set of TL packages into a single TL meta-package
+  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 ({ tlType, version ? "", outputName ? "", ... }@pkg: {
+          # outputName required to distinguish among bin.core-big outputs
+          key = "${pkg.pname or pkg.name}.${tlType}-${version}-${outputName}";
+          inherit pkg;
+        }) pkgs;
+      pkgListToSets = lib.concatMap tlPkgToSets; in
+    builtins.genericClosure {
+      startSet = pkgListToSets pkgList;
+      operator = { pkg, ... }: pkgListToSets (pkg.tlDeps or []);
+    });
+
   pkgSet = removeAttrs args [ "pkgFilter" "extraName" "extraVersion" ];
   pkgList = rec {
     combined = combinePkgs (lib.attrValues pkgSet);
diff --git a/nixpkgs/pkgs/tools/typesetting/tex/texlive/default.nix b/nixpkgs/pkgs/tools/typesetting/tex/texlive/default.nix
index 9839d764adf4..96bc6f61e4f0 100644
--- a/nixpkgs/pkgs/tools/typesetting/tex/texlive/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/tex/texlive/default.nix
@@ -4,7 +4,7 @@
 */
 { stdenv, lib, fetchurl, runCommand, writeText, buildEnv
 , callPackage, ghostscript_headless, harfbuzz
-, makeWrapper
+, makeWrapper, installShellFiles
 , python3, ruby, perl, tk, jdk, bash, snobol4
 , coreutils, findutils, gawk, getopt, gnugrep, gnumake, gnupg, gnused, gzip, ncurses, zip
 , libfaketime, asymptote, biber-ms, makeFontsConf
@@ -23,8 +23,8 @@ let
 
   # function for creating a working environment from a set of TL packages
   combine = import ./combine.nix {
-    inherit bin combinePkgs buildEnv lib makeWrapper writeText runCommand
-      stdenv perl libfaketime makeFontsConf bash tl coreutils gawk gnugrep gnused;
+    inherit bin buildEnv lib makeWrapper writeText runCommand
+      perl libfaketime makeFontsConf bash tl coreutils gawk gnugrep gnused;
     ghostscript = ghostscript_headless;
   };
 
@@ -34,392 +34,14 @@ let
 
   # the set of TeX Live packages, collections, and schemes; using upstream naming
   overriddenTlpdb = let
-    # most format -> engine links are generated by texlinks according to fmtutil.cnf at combine time
-    # so we remove them from binfiles, and add back the ones texlinks purposefully ignore (e.g. mptopdf)
-    removeFormatLinks = lib.mapAttrs (_: attrs:
-      if (attrs ? formats && attrs ? binfiles)
-      then let formatLinks = lib.catAttrs "name" (lib.filter (f: f.name != f.engine) attrs.formats);
-               binNotFormats = lib.subtractLists formatLinks attrs.binfiles;
-           in if binNotFormats != [] then attrs // { binfiles = binNotFormats; } else removeAttrs attrs [ "binfiles" ]
-      else attrs);
-
-    orig = removeFormatLinks (removeAttrs tlpdb [ "00texlive.config" ]); in
-
-    lib.recursiveUpdate orig rec {
-      #### overrides of texlive.tlpdb
-
-      #### nonstandard script folders
-      context.scriptsFolder = "context/stubs/unix";
-      cyrillic-bin.scriptsFolder = "texlive-extra";
-      fontinst.scriptsFolder = "texlive-extra";
-      mptopdf.scriptsFolder = "context/perl";
-      pdftex.scriptsFolder = "simpdftex";
-      texlive-scripts.scriptsFolder = "texlive";
-      texlive-scripts-extra.scriptsFolder = "texlive-extra";
-      xetex.scriptsFolder = "texlive-extra";
-
-      #### interpreters not detected by looking at the script extensions
-      ctanbib.extraBuildInputs = [ bin.luatex ];
-      de-macro.extraBuildInputs = [ python3 ];
-      match_parens.extraBuildInputs = [ ruby ];
-      optexcount.extraBuildInputs = [ python3 ];
-      pdfbook2.extraBuildInputs = [ python3 ];
-      texlogsieve.extraBuildInputs = [ bin.luatex ];
-
-      #### perl packages
-      crossrefware.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ LWP URI ])) ];
-      ctan-o-mat.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ LWP LWPProtocolHttps ])) ];
-      ctanify.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ FileCopyRecursive ])) ];
-      ctanupload.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ HTMLFormatter WWWMechanize ])) ];
-      exceltex.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ SpreadsheetParseExcel ])) ];
-      latex-git-log.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ IPCSystemSimple ])) ];
-      latexindent.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ FileHomeDir LogDispatch LogLog4perl UnicodeLineBreak YAMLTiny ])) ];
-      pax.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ FileWhich ])) ];
-      ptex-fontmaps.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ Tk ])) ];
-      purifyeps.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ FileWhich ])) ];
-      svn-multi.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ TimeDate ])) ];
-      texdoctk.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ Tk ])) ];
-      ulqda.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ DigestSHA1 ])) ];
-
-      #### python packages
-      pythontex.extraBuildInputs = [ (python3.withPackages (ps: with ps; [ pygments ])) ];
-
-      #### other runtime PATH dependencies
-      a2ping.extraBuildInputs = [ ghostscript_headless ];
-      bibexport.extraBuildInputs = [ gnugrep ];
-      checklistings.extraBuildInputs = [ coreutils ];
-      cjk-gs-integrate.extraBuildInputs = [ ghostscript_headless ];
-      context.extraBuildInputs = [ coreutils ruby ];
-      cyrillic-bin.extraBuildInputs = [ coreutils gnused ];
-      dtxgen.extraBuildInputs = [ coreutils getopt gnumake zip ];
-      dviljk.extraBuildInputs = [ coreutils ];
-      epspdf.extraBuildInputs = [ ghostscript_headless ];
-      epstopdf.extraBuildInputs = [ ghostscript_headless ];
-      fragmaster.extraBuildInputs = [ ghostscript_headless ];
-      installfont.extraBuildInputs = [ coreutils getopt gnused ];
-      latexfileversion.extraBuildInputs = [ coreutils gnugrep gnused ];
-      listings-ext.extraBuildInputs = [ coreutils getopt ];
-      ltxfileinfo.extraBuildInputs = [ coreutils getopt gnused ];
-      ltximg.extraBuildInputs = [ ghostscript_headless ];
-      luaotfload.extraBuildInputs = [ ncurses ];
-      makeindex.extraBuildInputs = [ coreutils gnused ];
-      pagelayout.extraBuildInputs = [ gnused ncurses ];
-      pdfcrop.extraBuildInputs = [ ghostscript_headless ];
-      pdftex.extraBuildInputs = [ coreutils ghostscript_headless gnused ];
-      pdftex-quiet.extraBuildInputs = [ coreutils ];
-      pdfxup.extraBuildInputs = [ coreutils ghostscript_headless ];
-      pkfix-helper.extraBuildInputs = [ ghostscript_headless ];
-      ps2eps.extraBuildInputs = [ ghostscript_headless ];
-      pst2pdf.extraBuildInputs = [ ghostscript_headless ];
-      tex4ht.extraBuildInputs = [ ruby ];
-      texlive-scripts.extraBuildInputs = [ gnused ];
-      texlive-scripts-extra.extraBuildInputs = [ coreutils findutils ghostscript_headless gnused ];
-      thumbpdf.extraBuildInputs = [ ghostscript_headless ];
-      tpic2pdftex.extraBuildInputs = [ gawk ];
-      wordcount.extraBuildInputs = [ coreutils gnugrep ];
-      xdvi.extraBuildInputs = [ coreutils gnugrep ];
-      xindy.extraBuildInputs = [ gzip ];
-
-      #### adjustments to binaries
-      # TODO patch the scripts from bin.* directly in bin.* instead of here
-
-      # mptopdf is a format link, but not generated by texlinks
-      # so we add it back to binfiles to generate it from mkPkgBin
-      mptopdf.binfiles = (orig.mptopdf.binfiles or []) ++ [ "mptopdf" ];
-
-      # remove man
-      texlive-scripts.binfiles = lib.remove "man" orig.texlive-scripts.binfiles;
-
-      # upmendex is "TODO" in bin.nix
-      uptex.binfiles = lib.remove "upmendex" orig.uptex.binfiles;
-
-      # xindy is broken on some platforms unfortunately
-      xindy.binfiles = if bin ? xindy
-        then lib.subtractLists [ "xindy.mem" "xindy.run" ] orig.xindy.binfiles
-        else [];
-
-      #### additional symlinks
-      cluttex.binlinks = {
-        cllualatex = "cluttex";
-        clxelatex = "cluttex";
-      };
-
-      epstopdf.binlinks.repstopdf = "epstopdf";
-      pdfcrop.binlinks.rpdfcrop = "pdfcrop";
-
-      ptex.binlinks = {
-        pdvitomp = bin.metapost + "/bin/pdvitomp";
-        pmpost = bin.metapost + "/bin/pmpost";
-        r-pmpost = bin.metapost + "/bin/r-pmpost";
-      };
-
-      texdef.binlinks = {
-        latexdef = "texdef";
-      };
-
-      texlive-scripts.binlinks = {
-        mktexfmt = "fmtutil";
-        texhash = (lib.last tl."texlive.infra".pkgs) + "/bin/mktexlsr";
-      };
-
-      texlive-scripts-extra.binlinks = {
-        allec = "allcm";
-        kpsepath = "kpsetool";
-        kpsexpand = "kpsetool";
-      };
-
-      # metapost binaries are in bin.metapost instead of bin.core
-      uptex.binlinks = {
-        r-upmpost = bin.metapost + "/bin/r-upmpost";
-        updvitomp = bin.metapost + "/bin/updvitomp";
-        upmpost = bin.metapost + "/bin/upmpost";
-      };
-
-      #### add PATH dependencies without wrappers
-      # TODO deduplicate this code
-      a2ping.postFixup = ''
-        sed -i '6i$ENV{PATH}='"'"'${lib.makeBinPath a2ping.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/a2ping
-      '';
-
-      bibexport.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath bibexport.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/bibexport
-      '';
-
-      checklistings.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath checklistings.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/checklistings
-      '';
-
-      cjk-gs-integrate.postFixup = ''
-        sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath cjk-gs-integrate.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/cjk-gs-integrate
-      '';
-
-      context.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath [ coreutils ]}''${PATH:+:$PATH}"' "$out"/bin/{contextjit,mtxrunjit}
-        sed -i '2iPATH="${lib.makeBinPath [ ruby ]}''${PATH:+:$PATH}"' "$out"/bin/texexec
-      '';
-
-      cyrillic-bin.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath cyrillic-bin.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/rumakeindex
-      '';
-
-      dtxgen.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath dtxgen.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/dtxgen
-      '';
-
-      dviljk.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath dviljk.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/dvihp
-      '';
-
-      epstopdf.postFixup = ''
-        sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath epstopdf.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/epstopdf
-      '';
-
-      fragmaster.postFixup = ''
-        sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath fragmaster.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/fragmaster
-      '';
-
-      installfont.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath installfont.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/installfont-tl
-      '';
-
-      latexfileversion.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath latexfileversion.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/latexfileversion
-      '';
-
-      listings-ext.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath listings-ext.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/listings-ext.sh
-      '';
-
-      ltxfileinfo.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath ltxfileinfo.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/ltxfileinfo
-      '';
-
-      ltximg.postFixup = ''
-        sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath ltximg.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/ltximg
-      '';
-
-      luaotfload.postFixup = ''
-        sed -i '2ios.setenv("PATH","${lib.makeBinPath luaotfload.extraBuildInputs}" .. (os.getenv("PATH") and ":" .. os.getenv("PATH") or ""))' "$out"/bin/luaotfload-tool
-      '';
-
-      makeindex.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath makeindex.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/mkindex
-      '';
-
-      pagelayout.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath [ gnused ]}''${PATH:+:$PATH}"' "$out"/bin/pagelayoutapi
-        sed -i '2iPATH="${lib.makeBinPath [ ncurses ]}''${PATH:+:$PATH}"' "$out"/bin/textestvis
-      '';
-
-      pdfcrop.postFixup = ''
-        sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath pdfcrop.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/pdfcrop
-      '';
-
-      pdftex.postFixup = ''
-        sed -i -e '2iPATH="${lib.makeBinPath [ coreutils gnused ]}''${PATH:+:$PATH}"' \
-          -e 's!^distillerpath="/usr/local/bin"$!distillerpath="${lib.makeBinPath [ ghostscript_headless ]}"!' \
-          "$out"/bin/simpdftex
-      '';
-
-      pdftex-quiet.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath pdftex-quiet.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/pdftex-quiet
-      '';
-
-      pdfxup.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath pdfxup.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/pdfxup
-      '';
-
-      pkfix-helper.postFixup = ''
-        sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath pkfix-helper.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/pkfix-helper
-      '';
-
-      ps2eps.postFixup = ''
-        sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath ps2eps.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/ps2eps
-      '';
-
-      pst2pdf.postFixup = ''
-        sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath pst2pdf.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/pst2pdf
-      '';
-
-      tex4ht.postFixup = ''
-        sed -i -e '2iPATH="${lib.makeBinPath tex4ht.extraBuildInputs}''${PATH:+:$PATH}"' -e 's/\\rubyCall//g;' "$out"/bin/htcontext
-      '';
-
-      texlive-scripts.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath texlive-scripts.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/{fmtutil-user,mktexmf,mktexpk,mktextfm,updmap-user}
-      '';
-
-      thumbpdf.postFixup = ''
-        sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath thumbpdf.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/thumbpdf
-      '';
-
-      tpic2pdftex.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath tpic2pdftex.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/tpic2pdftex
-      '';
-
-      wordcount.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath wordcount.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/wordcount
-      '';
-
-      # TODO patch in bin.xdvi
-      xdvi.postFixup = ''
-        sed -i '2iPATH="${lib.makeBinPath xdvi.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/xdvi
-      '';
-
-      xindy.postFixup = ''
-        sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath xindy.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/{texindy,xindy}
-      '';
-
-      #### other script fixes
-      # misc tab and python3 fixes
-      ebong.postFixup = ''
-        sed -Ei 's/import sre/import re/; s/file\(/open(/g; s/\t/        /g; s/print +(.*)$/print(\1)/g' "$out"/bin/ebong
-      '';
-
-      # find files in script directory, not binary directory
-      # add runtime dependencies to PATH
-      epspdf.postFixup = ''
-        sed -i '2ios.setenv("PATH","${lib.makeBinPath epspdf.extraBuildInputs}" .. (os.getenv("PATH") and ":" .. os.getenv("PATH") or ""))' "$out"/bin/epspdf
-        substituteInPlace "$out"/bin/epspdftk --replace '[info script]' "\"$scriptsFolder/epspdftk.tcl\""
-      '';
-
-      # find files in script directory, not in binary directory
-      latexindent.postFixup = ''
-        substituteInPlace "$out"/bin/latexindent --replace 'use FindBin;' "BEGIN { \$0 = '$scriptsFolder' . '/latexindent.pl'; }; use FindBin;"
-      '';
-
-      # Patch texlinks.sh back to 2015 version;
-      # otherwise some bin/ links break, e.g. xe(la)tex.
-      # add runtime dependencies to PATH
-      texlive-scripts-extra.postFixup = ''
-        patch -R "$out"/bin/texlinks < '${./texlinks.diff}'
-        sed -i '2iPATH="${lib.makeBinPath [ coreutils ]}''${PATH:+:$PATH}"' "$out"/bin/{allcm,dvired,mkocp,ps2frag}
-        sed -i '2iPATH="${lib.makeBinPath [ coreutils findutils ]}''${PATH:+:$PATH}"' "$out"/bin/allneeded
-        sed -i '2iPATH="${lib.makeBinPath [ coreutils ghostscript_headless ]}''${PATH:+:$PATH}"' "$out"/bin/dvi2fax
-        sed -i '2iPATH="${lib.makeBinPath [ gnused ]}''${PATH:+:$PATH}"' "$out"/bin/{kpsetool,texconfig,texconfig-sys}
-        sed -i '2iPATH="${lib.makeBinPath [ coreutils gnused ]}''${PATH:+:$PATH}"' "$out"/bin/texconfig-dialog
-      '';
-
-      # patch interpreter
-      texosquery.postFixup = ''
-        substituteInPlace "$out"/bin/* --replace java "$interpJava"
-      '';
-
-      # hardcode revision numbers (since texlive.infra, tlshell are not in either system or user texlive.tlpdb)
-      tlshell.postFixup = ''
-        substituteInPlace "$out"/bin/tlshell \
-          --replace '[dict get $::pkgs texlive.infra localrev]' '${toString orig."texlive.infra".revision}' \
-          --replace '[dict get $::pkgs tlshell localrev]' '${toString orig.tlshell.revision}'
-      '';
-      #### dependency changes
-
-      # it seems to need it to transform fonts
-      xdvi.deps = (orig.xdvi.deps or []) ++  [ "metafont" ];
-
-      # remove dependency-heavy packages from the basic collections
-      collection-basic.deps = lib.subtractLists [ "metafont" "xdvi" ] orig.collection-basic.deps;
-
-      # add them elsewhere so that collections cover all packages
-      collection-metapost.deps = orig.collection-metapost.deps ++ [ "metafont" ];
-      collection-plaingeneric.deps = orig.collection-plaingeneric.deps ++ [ "xdvi" ];
-
-      #### misc
-
-      # tlpdb lists license as "unknown", but the README says lppl13: http://mirrors.ctan.org/language/arabic/arabi-add/README
-      arabi-add.license = [  "lppl13c" ];
-
-      # TODO: remove this when updating to texlive-2023, npp-for-context is no longer in texlive
-      # tlpdb lists license as "noinfo", but it's gpl3: https://github.com/luigiScarso/context-npp
-      npp-for-context.license = [  "gpl3Only" ];
-
-      texdoc = {
-        extraRevision = "-tlpdb${toString tlpdbVersion.revision}";
-        extraVersion = "-tlpdb-${toString tlpdbVersion.revision}";
-
-        # build Data.tlpdb.lua (part of the 'tlType == "run"' package)
-        postUnpack = ''
-          if [[ -f "$out"/scripts/texdoc/texdoc.tlu ]]; then
-            unxz --stdout "${tlpdbxz}" > texlive.tlpdb
-
-            # create dummy doc file to ensure that texdoc does not return an error
-            mkdir -p support/texdoc
-            touch support/texdoc/NEWS
-
-            TEXMFCNF="${bin.core}"/share/texmf-dist/web2c TEXMF="$out" TEXDOCS=. TEXMFVAR=. \
-              "${bin.luatex}"/bin/texlua "$out"/scripts/texdoc/texdoc.tlu \
-              -c texlive_tlpdb=texlive.tlpdb -lM texdoc
-
-            cp texdoc/cache-tlpdb.lua "$out"/scripts/texdoc/Data.tlpdb.lua
-          fi
-        '';
-      };
-
-      "texlive.infra" = {
-        extraRevision = ".tlpdb${toString tlpdbVersion.revision}";
-        extraVersion = "-tlpdb-${toString tlpdbVersion.revision}";
-
-        # add license of tlmgr and TeXLive::* perl packages and of bin.core
-        license = [ "gpl2Plus" ] ++ lib.toList bin.core.meta.license.shortName ++ orig."texlive.infra".license or [ ];
-
-        scriptsFolder = "texlive";
-        extraBuildInputs = [ coreutils gnused gnupg (lib.last tl.kpathsea.pkgs) (perl.withPackages (ps: with ps; [ Tk ])) ];
-
-        # make tlmgr believe it can use kpsewhich to evaluate TEXMFROOT
-        postFixup = ''
-          substituteInPlace "$out"/bin/tlmgr \
-            --replace 'if (-r "$bindir/$kpsewhichname")' 'if (1)'
-          sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath [ gnupg ]}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/tlmgr
-          sed -i '2iPATH="${lib.makeBinPath [ coreutils gnused (lib.last tl.kpathsea.pkgs) ]}''${PATH:+:$PATH}"' "$out"/bin/mktexlsr
-        '';
-
-        # add minimal texlive.tlpdb
-        postUnpack = ''
-          if [[ "$tlType" == "tlpkg" ]] ; then
-            xzcat "${tlpdbxz}" | sed -n -e '/^name \(00texlive.config\|00texlive.installation\)$/,/^$/p' > "$out"/texlive.tlpdb
-          fi
-        '';
-      };
-    }; # overrides
+    overrides = import ./tlpdb-overrides.nix {
+      inherit
+        lib bin tlpdb tlpdbxz tl
+        installShellFiles
+        coreutils findutils gawk getopt ghostscript_headless gnugrep
+        gnumake gnupg gnused gzip ncurses perl python3 ruby zip;
+    };
+  in overrides tlpdb;
 
   version = {
     # day of the snapshot being taken
@@ -478,29 +100,9 @@ let
       // lib.optionalAttrs (args ? deps) { deps = map (n: tl.${n}) (args.deps or [ ]); })
   ) overriddenTlpdb;
 
-  # combine a set of TL packages into a single TL meta-package
-  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 ({ tlType, version ? "", outputName ? "", ... }@pkg: {
-          # outputName required to distinguish among bin.core-big outputs
-          key = "${pkg.pname or pkg.name}.${tlType}-${version}-${outputName}";
-          inherit pkg;
-        }) pkgs;
-      pkgListToSets = lib.concatMap tlPkgToSets; in
-    builtins.genericClosure {
-      startSet = pkgListToSets pkgList;
-      operator = { pkg, ... }: pkgListToSets (pkg.tlDeps or []);
-    });
-
   assertions = with lib;
     assertMsg (tlpdbVersion.year == version.texliveYear) "TeX Live year in texlive does not match tlpdb.nix, refusing to evaluate" &&
-    assertMsg (tlpdbVersion.frozen == version.final) "TeX Live final status in texlive does not match tlpdb.nix, refusing to evaluate" &&
-    (!useFixedHashes ||
-      (let all = concatLists (catAttrs "pkgs" (attrValues tl));
-         fods = filter (p: isDerivation p && p.tlType != "bin") all;
-      in builtins.all (p: assertMsg (p ? outputHash) "The TeX Live package '${p.pname + lib.optionalString (p.tlType != "run") ("." + p.tlType)}' does not have a fixed output hash. Please read UPGRADING.md on how to build a new 'fixed-hashes.nix'.") fods));
+    assertMsg (tlpdbVersion.frozen == version.final) "TeX Live final status in texlive does not match tlpdb.nix, refusing to evaluate";
 
 in
   tl // {
diff --git a/nixpkgs/pkgs/tools/typesetting/tex/texlive/tlpdb-overrides.nix b/nixpkgs/pkgs/tools/typesetting/tex/texlive/tlpdb-overrides.nix
new file mode 100644
index 000000000000..4d2ce46ed475
--- /dev/null
+++ b/nixpkgs/pkgs/tools/typesetting/tex/texlive/tlpdb-overrides.nix
@@ -0,0 +1,411 @@
+{ lib, tlpdb, bin, tlpdbxz, tl
+, installShellFiles
+, coreutils, findutils, gawk, getopt, ghostscript_headless, gnugrep
+, gnumake, gnupg, gnused, gzip, ncurses, perl, python3, ruby, zip
+}:
+
+oldTlpdb:
+
+let
+  tlpdbVersion = tlpdb."00texlive.config";
+
+    # most format -> engine links are generated by texlinks according to fmtutil.cnf at combine time
+    # so we remove them from binfiles, and add back the ones texlinks purposefully ignore (e.g. mptopdf)
+    removeFormatLinks = lib.mapAttrs (_: attrs:
+      if (attrs ? formats && attrs ? binfiles)
+      then let formatLinks = lib.catAttrs "name" (lib.filter (f: f.name != f.engine) attrs.formats);
+               binNotFormats = lib.subtractLists formatLinks attrs.binfiles;
+           in if binNotFormats != [] then attrs // { binfiles = binNotFormats; } else removeAttrs attrs [ "binfiles" ]
+      else attrs);
+
+    orig = removeFormatLinks (removeAttrs oldTlpdb [ "00texlive.config" ]);
+
+in lib.recursiveUpdate orig rec {
+  #### overrides of texlive.tlpdb
+
+  #### nonstandard script folders
+  context.scriptsFolder = "context/stubs/unix";
+  cyrillic-bin.scriptsFolder = "texlive-extra";
+  fontinst.scriptsFolder = "texlive-extra";
+  mptopdf.scriptsFolder = "context/perl";
+  pdftex.scriptsFolder = "simpdftex";
+  texlive-scripts.scriptsFolder = "texlive";
+  texlive-scripts-extra.scriptsFolder = "texlive-extra";
+  xetex.scriptsFolder = "texlive-extra";
+
+  #### interpreters not detected by looking at the script extensions
+  ctanbib.extraBuildInputs = [ bin.luatex ];
+  de-macro.extraBuildInputs = [ python3 ];
+  match_parens.extraBuildInputs = [ ruby ];
+  optexcount.extraBuildInputs = [ python3 ];
+  pdfbook2.extraBuildInputs = [ python3 ];
+  texlogsieve.extraBuildInputs = [ bin.luatex ];
+
+  #### perl packages
+  crossrefware.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ LWP URI ])) ];
+  ctan-o-mat.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ LWP LWPProtocolHttps ])) ];
+  ctanify.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ FileCopyRecursive ])) ];
+  ctanupload.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ HTMLFormatter WWWMechanize ])) ];
+  exceltex.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ SpreadsheetParseExcel ])) ];
+  latex-git-log.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ IPCSystemSimple ])) ];
+  latexindent.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ FileHomeDir LogDispatch LogLog4perl UnicodeLineBreak YAMLTiny ])) ];
+  pax.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ FileWhich ])) ];
+  ptex-fontmaps.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ Tk ])) ];
+  purifyeps.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ FileWhich ])) ];
+  svn-multi.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ TimeDate ])) ];
+  texdoctk.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ Tk ])) ];
+  ulqda.extraBuildInputs = [ (perl.withPackages (ps: with ps; [ DigestSHA1 ])) ];
+
+  #### python packages
+  pythontex.extraBuildInputs = [ (python3.withPackages (ps: with ps; [ pygments ])) ];
+
+  #### other runtime PATH dependencies
+  a2ping.extraBuildInputs = [ ghostscript_headless ];
+  bibexport.extraBuildInputs = [ gnugrep ];
+  checklistings.extraBuildInputs = [ coreutils ];
+  cjk-gs-integrate.extraBuildInputs = [ ghostscript_headless ];
+  context.extraBuildInputs = [ coreutils ruby ];
+  cyrillic-bin.extraBuildInputs = [ coreutils gnused ];
+  dtxgen.extraBuildInputs = [ coreutils getopt gnumake zip ];
+  dviljk.extraBuildInputs = [ coreutils ];
+  epspdf.extraBuildInputs = [ ghostscript_headless ];
+  epstopdf.extraBuildInputs = [ ghostscript_headless ];
+  fragmaster.extraBuildInputs = [ ghostscript_headless ];
+  installfont.extraBuildInputs = [ coreutils getopt gnused ];
+  latexfileversion.extraBuildInputs = [ coreutils gnugrep gnused ];
+  listings-ext.extraBuildInputs = [ coreutils getopt ];
+  ltxfileinfo.extraBuildInputs = [ coreutils getopt gnused ];
+  ltximg.extraBuildInputs = [ ghostscript_headless ];
+  luaotfload.extraBuildInputs = [ ncurses ];
+  makeindex.extraBuildInputs = [ coreutils gnused ];
+  pagelayout.extraBuildInputs = [ gnused ncurses ];
+  pdfcrop.extraBuildInputs = [ ghostscript_headless ];
+  pdftex.extraBuildInputs = [ coreutils ghostscript_headless gnused ];
+  pdftex-quiet.extraBuildInputs = [ coreutils ];
+  pdfxup.extraBuildInputs = [ coreutils ghostscript_headless ];
+  pkfix-helper.extraBuildInputs = [ ghostscript_headless ];
+  ps2eps.extraBuildInputs = [ ghostscript_headless ];
+  pst2pdf.extraBuildInputs = [ ghostscript_headless ];
+  tex4ht.extraBuildInputs = [ ruby ];
+  texlive-scripts.extraBuildInputs = [ gnused ];
+  texlive-scripts-extra.extraBuildInputs = [ coreutils findutils ghostscript_headless gnused ];
+  thumbpdf.extraBuildInputs = [ ghostscript_headless ];
+  tpic2pdftex.extraBuildInputs = [ gawk ];
+  wordcount.extraBuildInputs = [ coreutils gnugrep ];
+  xdvi.extraBuildInputs = [ coreutils gnugrep ];
+  xindy.extraBuildInputs = [ gzip ];
+
+  #### adjustments to binaries
+  # TODO patch the scripts from bin.* directly in bin.* instead of here
+
+  # mptopdf is a format link, but not generated by texlinks
+  # so we add it back to binfiles to generate it from mkPkgBin
+  mptopdf.binfiles = (orig.mptopdf.binfiles or []) ++ [ "mptopdf" ];
+
+  # remove man
+  texlive-scripts.binfiles = lib.remove "man" orig.texlive-scripts.binfiles;
+
+  # upmendex is "TODO" in bin.nix
+  uptex.binfiles = lib.remove "upmendex" orig.uptex.binfiles;
+
+  # xindy is broken on some platforms unfortunately
+  xindy.binfiles = if bin ? xindy
+    then lib.subtractLists [ "xindy.mem" "xindy.run" ] orig.xindy.binfiles
+    else [];
+
+  #### additional symlinks
+  cluttex.binlinks = {
+    cllualatex = "cluttex";
+    clxelatex = "cluttex";
+  };
+
+  epstopdf.binlinks.repstopdf = "epstopdf";
+  pdfcrop.binlinks.rpdfcrop = "pdfcrop";
+
+  ptex.binlinks = {
+    pdvitomp = bin.metapost + "/bin/pdvitomp";
+    pmpost = bin.metapost + "/bin/pmpost";
+    r-pmpost = bin.metapost + "/bin/r-pmpost";
+  };
+
+  texdef.binlinks = {
+    latexdef = "texdef";
+  };
+
+  texlive-scripts.binlinks = {
+    mktexfmt = "fmtutil";
+    texhash = (lib.last tl."texlive.infra".pkgs) + "/bin/mktexlsr";
+  };
+
+  texlive-scripts-extra.binlinks = {
+    allec = "allcm";
+    kpsepath = "kpsetool";
+    kpsexpand = "kpsetool";
+  };
+
+  # metapost binaries are in bin.metapost instead of bin.core
+  uptex.binlinks = {
+    r-upmpost = bin.metapost + "/bin/r-upmpost";
+    updvitomp = bin.metapost + "/bin/updvitomp";
+    upmpost = bin.metapost + "/bin/upmpost";
+  };
+
+  #### add PATH dependencies without wrappers
+  # TODO deduplicate this code
+  a2ping.postFixup = ''
+    sed -i '6i$ENV{PATH}='"'"'${lib.makeBinPath a2ping.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/a2ping
+  '';
+
+  bibexport.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath bibexport.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/bibexport
+  '';
+
+  checklistings.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath checklistings.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/checklistings
+  '';
+
+  cjk-gs-integrate.postFixup = ''
+    sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath cjk-gs-integrate.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/cjk-gs-integrate
+  '';
+
+  context.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath [ coreutils ]}''${PATH:+:$PATH}"' "$out"/bin/{contextjit,mtxrunjit}
+    sed -i '2iPATH="${lib.makeBinPath [ ruby ]}''${PATH:+:$PATH}"' "$out"/bin/texexec
+  '';
+
+  cyrillic-bin.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath cyrillic-bin.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/rumakeindex
+  '';
+
+  dtxgen.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath dtxgen.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/dtxgen
+  '';
+
+  dviljk.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath dviljk.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/dvihp
+  '';
+
+  epstopdf.postFixup = ''
+    sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath epstopdf.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/epstopdf
+  '';
+
+  fragmaster.postFixup = ''
+    sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath fragmaster.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/fragmaster
+  '';
+
+  installfont.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath installfont.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/installfont-tl
+  '';
+
+  latexfileversion.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath latexfileversion.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/latexfileversion
+  '';
+
+  listings-ext.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath listings-ext.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/listings-ext.sh
+  '';
+
+  ltxfileinfo.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath ltxfileinfo.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/ltxfileinfo
+  '';
+
+  ltximg.postFixup = ''
+    sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath ltximg.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/ltximg
+  '';
+
+  luaotfload.postFixup = ''
+    sed -i '2ios.setenv("PATH","${lib.makeBinPath luaotfload.extraBuildInputs}" .. (os.getenv("PATH") and ":" .. os.getenv("PATH") or ""))' "$out"/bin/luaotfload-tool
+  '';
+
+  makeindex.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath makeindex.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/mkindex
+  '';
+
+  pagelayout.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath [ gnused ]}''${PATH:+:$PATH}"' "$out"/bin/pagelayoutapi
+    sed -i '2iPATH="${lib.makeBinPath [ ncurses ]}''${PATH:+:$PATH}"' "$out"/bin/textestvis
+  '';
+
+  pdfcrop.postFixup = ''
+    sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath pdfcrop.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/pdfcrop
+  '';
+
+  pdftex.postFixup = ''
+    sed -i -e '2iPATH="${lib.makeBinPath [ coreutils gnused ]}''${PATH:+:$PATH}"' \
+      -e 's!^distillerpath="/usr/local/bin"$!distillerpath="${lib.makeBinPath [ ghostscript_headless ]}"!' \
+      "$out"/bin/simpdftex
+  '';
+
+  pdftex-quiet.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath pdftex-quiet.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/pdftex-quiet
+  '';
+
+  pdfxup.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath pdfxup.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/pdfxup
+  '';
+
+  pkfix-helper.postFixup = ''
+    sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath pkfix-helper.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/pkfix-helper
+  '';
+
+  ps2eps.postFixup = ''
+    sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath ps2eps.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/ps2eps
+  '';
+
+  pst2pdf.postFixup = ''
+    sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath pst2pdf.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/pst2pdf
+  '';
+
+  tex4ht.postFixup = ''
+    sed -i -e '2iPATH="${lib.makeBinPath tex4ht.extraBuildInputs}''${PATH:+:$PATH}"' -e 's/\\rubyCall//g;' "$out"/bin/htcontext
+  '';
+
+  texlive-scripts.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath texlive-scripts.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/{fmtutil-user,mktexmf,mktexpk,mktextfm,updmap-user}
+  '';
+
+  thumbpdf.postFixup = ''
+    sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath thumbpdf.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/thumbpdf
+  '';
+
+  tpic2pdftex.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath tpic2pdftex.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/tpic2pdftex
+  '';
+
+  wordcount.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath wordcount.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/wordcount
+  '';
+
+  # TODO patch in bin.xdvi
+  xdvi.postFixup = ''
+    sed -i '2iPATH="${lib.makeBinPath xdvi.extraBuildInputs}''${PATH:+:$PATH}"' "$out"/bin/xdvi
+  '';
+
+  xindy.postFixup = ''
+    sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath xindy.extraBuildInputs}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/{texindy,xindy}
+  '';
+
+  #### other script fixes
+  # misc tab and python3 fixes
+  ebong.postFixup = ''
+    sed -Ei 's/import sre/import re/; s/file\(/open(/g; s/\t/        /g; s/print +(.*)$/print(\1)/g' "$out"/bin/ebong
+  '';
+
+  # find files in script directory, not binary directory
+  # add runtime dependencies to PATH
+  epspdf.postFixup = ''
+    sed -i '2ios.setenv("PATH","${lib.makeBinPath epspdf.extraBuildInputs}" .. (os.getenv("PATH") and ":" .. os.getenv("PATH") or ""))' "$out"/bin/epspdf
+    substituteInPlace "$out"/bin/epspdftk --replace '[info script]' "\"$scriptsFolder/epspdftk.tcl\""
+  '';
+
+  # find files in script directory, not in binary directory
+  latexindent.postFixup = ''
+    substituteInPlace "$out"/bin/latexindent --replace 'use FindBin;' "BEGIN { \$0 = '$scriptsFolder' . '/latexindent.pl'; }; use FindBin;"
+  '';
+
+  # Patch texlinks.sh back to 2015 version;
+  # otherwise some bin/ links break, e.g. xe(la)tex.
+  # add runtime dependencies to PATH
+  texlive-scripts-extra.postFixup = ''
+    patch -R "$out"/bin/texlinks < '${./texlinks.diff}'
+    sed -i '2iPATH="${lib.makeBinPath [ coreutils ]}''${PATH:+:$PATH}"' "$out"/bin/{allcm,dvired,mkocp,ps2frag}
+    sed -i '2iPATH="${lib.makeBinPath [ coreutils findutils ]}''${PATH:+:$PATH}"' "$out"/bin/allneeded
+    sed -i '2iPATH="${lib.makeBinPath [ coreutils ghostscript_headless ]}''${PATH:+:$PATH}"' "$out"/bin/dvi2fax
+    sed -i '2iPATH="${lib.makeBinPath [ gnused ]}''${PATH:+:$PATH}"' "$out"/bin/{kpsetool,texconfig,texconfig-sys}
+    sed -i '2iPATH="${lib.makeBinPath [ coreutils gnused ]}''${PATH:+:$PATH}"' "$out"/bin/texconfig-dialog
+  '';
+
+  # patch interpreter
+  texosquery.postFixup = ''
+    substituteInPlace "$out"/bin/* --replace java "$interpJava"
+  '';
+
+  # hardcode revision numbers (since texlive.infra, tlshell are not in either system or user texlive.tlpdb)
+  tlshell.postFixup = ''
+    substituteInPlace "$out"/bin/tlshell \
+      --replace '[dict get $::pkgs texlive.infra localrev]' '${toString orig."texlive.infra".revision}' \
+      --replace '[dict get $::pkgs tlshell localrev]' '${toString orig.tlshell.revision}'
+  '';
+  #### dependency changes
+
+  # it seems to need it to transform fonts
+  xdvi.deps = (orig.xdvi.deps or []) ++  [ "metafont" ];
+
+  # remove dependency-heavy packages from the basic collections
+  collection-basic.deps = lib.subtractLists [ "metafont" "xdvi" ] orig.collection-basic.deps;
+
+  # add them elsewhere so that collections cover all packages
+  collection-metapost.deps = orig.collection-metapost.deps ++ [ "metafont" ];
+  collection-plaingeneric.deps = orig.collection-plaingeneric.deps ++ [ "xdvi" ];
+
+  #### misc
+
+  # tlpdb lists license as "unknown", but the README says lppl13: http://mirrors.ctan.org/language/arabic/arabi-add/README
+  arabi-add.license = [  "lppl13c" ];
+
+  # TODO: remove this when updating to texlive-2023, npp-for-context is no longer in texlive
+  # tlpdb lists license as "noinfo", but it's gpl3: https://github.com/luigiScarso/context-npp
+  npp-for-context.license = [  "gpl3Only" ];
+
+  texdoc = {
+    extraRevision = "-tlpdb${toString tlpdbVersion.revision}";
+    extraVersion = "-tlpdb-${toString tlpdbVersion.revision}";
+
+    extraNativeBuildInputs = [ installShellFiles ];
+
+    # build Data.tlpdb.lua (part of the 'tlType == "run"' package)
+    postUnpack = ''
+      if [[ -f "$out"/scripts/texdoc/texdoc.tlu ]]; then
+        unxz --stdout "${tlpdbxz}" > texlive.tlpdb
+
+        # create dummy doc file to ensure that texdoc does not return an error
+        mkdir -p support/texdoc
+        touch support/texdoc/NEWS
+
+        TEXMFCNF="${bin.core}"/share/texmf-dist/web2c TEXMF="$out" TEXDOCS=. TEXMFVAR=. \
+          "${bin.luatex}"/bin/texlua "$out"/scripts/texdoc/texdoc.tlu \
+          -c texlive_tlpdb=texlive.tlpdb -lM texdoc
+
+        cp texdoc/cache-tlpdb.lua "$out"/scripts/texdoc/Data.tlpdb.lua
+      fi
+    '';
+
+    # install zsh completion
+    postFixup = ''
+      TEXMFCNF="${bin.core}"/share/texmf-dist/web2c TEXMF="$scriptsFolder/../.." \
+        texlua "$out"/bin/texdoc --print-completion zsh > "$TMPDIR"/_texdoc
+      substituteInPlace "$TMPDIR"/_texdoc \
+        --replace 'compdef __texdoc texdoc' '#compdef texdoc' \
+        --replace '$(kpsewhich -var-value TEXMFROOT)/tlpkg/texlive.tlpdb' '$(kpsewhich Data.tlpdb.lua)' \
+        --replace '/^name[^.]*$/ {print $2}' '/^  \["[^"]*"\] = {$/ { print substr($1,3,length($1)-4) }'
+      echo '__texdoc' >> "$TMPDIR"/_texdoc
+      installShellCompletion --zsh "$TMPDIR"/_texdoc
+    '';
+  };
+
+  "texlive.infra" = {
+    extraRevision = ".tlpdb${toString tlpdbVersion.revision}";
+    extraVersion = "-tlpdb-${toString tlpdbVersion.revision}";
+
+    # add license of tlmgr and TeXLive::* perl packages and of bin.core
+    license = [ "gpl2Plus" ] ++ lib.toList bin.core.meta.license.shortName ++ orig."texlive.infra".license or [ ];
+
+    scriptsFolder = "texlive";
+    extraBuildInputs = [ coreutils gnused gnupg (lib.last tl.kpathsea.pkgs) (perl.withPackages (ps: with ps; [ Tk ])) ];
+
+    # make tlmgr believe it can use kpsewhich to evaluate TEXMFROOT
+    postFixup = ''
+      substituteInPlace "$out"/bin/tlmgr \
+        --replace 'if (-r "$bindir/$kpsewhichname")' 'if (1)'
+      sed -i '2i$ENV{PATH}='"'"'${lib.makeBinPath [ gnupg ]}'"'"' . ($ENV{PATH} ? ":$ENV{PATH}" : '"'''"');' "$out"/bin/tlmgr
+      sed -i '2iPATH="${lib.makeBinPath [ coreutils gnused (lib.last tl.kpathsea.pkgs) ]}''${PATH:+:$PATH}"' "$out"/bin/mktexlsr
+    '';
+
+    # add minimal texlive.tlpdb
+    postUnpack = ''
+      if [[ "$tlType" == "tlpkg" ]] ; then
+        xzcat "${tlpdbxz}" | sed -n -e '/^name \(00texlive.config\|00texlive.installation\)$/,/^$/p' > "$out"/texlive.tlpdb
+      fi
+    '';
+  };
+}
diff --git a/nixpkgs/pkgs/tools/typesetting/typst/default.nix b/nixpkgs/pkgs/tools/typesetting/typst/default.nix
index adcbee4bb28e..66b0160c3632 100644
--- a/nixpkgs/pkgs/tools/typesetting/typst/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/typst/default.nix
@@ -49,5 +49,6 @@ rustPlatform.buildRustPackage rec {
     changelog = "https://github.com/typst/typst/releases/tag/${src.rev}";
     license = licenses.asl20;
     maintainers = with maintainers; [ drupol figsoda kanashimia ];
+    mainProgram = "typst";
   };
 }
diff --git a/nixpkgs/pkgs/tools/typesetting/typstfmt/Cargo.lock b/nixpkgs/pkgs/tools/typesetting/typstfmt/Cargo.lock
index e760716d05ea..5cc5d755f21b 100644
--- a/nixpkgs/pkgs/tools/typesetting/typstfmt/Cargo.lock
+++ b/nixpkgs/pkgs/tools/typesetting/typstfmt/Cargo.lock
@@ -4,9 +4,9 @@ version = 3
 
 [[package]]
 name = "aho-corasick"
-version = "1.0.2"
+version = "1.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41"
+checksum = "0c378d78423fdad8089616f827526ee33c19f2fddbd5de1629152c9593ba4783"
 dependencies = [
  "memchr",
 ]
@@ -24,9 +24,9 @@ dependencies = [
 
 [[package]]
 name = "bstr"
-version = "1.6.0"
+version = "1.6.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05"
+checksum = "4c2f7349907b712260e64b0afe2f84692af14a454be26187d9df565c7f69266a"
 dependencies = [
  "memchr",
  "serde",
@@ -73,18 +73,18 @@ dependencies = [
 
 [[package]]
 name = "ecow"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5c5051925c54d9a42c8652313b5358a7432eed209466b443ed5220431243a14"
+checksum = "1d1990d053cf6edf3f030682dba3b0eb65ef01fabb2686072765d8a17d6728e8"
 dependencies = [
  "serde",
 ]
 
 [[package]]
 name = "either"
-version = "1.8.1"
+version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
+checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
 
 [[package]]
 name = "encode_unicode"
@@ -106,9 +106,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 
 [[package]]
 name = "globmatch"
-version = "0.2.4"
+version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0e82f77d5e36ce0c3941a39a6d8fff8ed9553ae13586b31640d6885f7376097"
+checksum = "3755076379cc2b2bbf53855fe718e1eed3093cfb769ebf5d290f617fa9cc09a0"
 dependencies = [
  "globset",
  "log",
@@ -117,12 +117,12 @@ dependencies = [
 
 [[package]]
 name = "globset"
-version = "0.4.11"
+version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1391ab1f92ffcc08911957149833e682aa3fe252b9f45f966d2ef972274c97df"
+checksum = "759c97c1e17c55525b57192c06a267cda0ac5210b222d6b82189a2338fa1c13d"
 dependencies = [
  "aho-corasick",
- "bstr 1.6.0",
+ "bstr 1.6.2",
  "fnv",
  "log",
  "regex",
@@ -192,15 +192,15 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
 
 [[package]]
 name = "log"
-version = "0.4.19"
+version = "0.4.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4"
+checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
 
 [[package]]
 name = "memchr"
-version = "2.5.0"
+version = "2.6.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+checksum = "5486aed0026218e61b8a01d5fbd5a0a134649abb71a0e53b7bc088529dced86e"
 
 [[package]]
 name = "nu-ansi-term"
@@ -226,9 +226,9 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.10"
+version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c40d25201921e5ff0c862a505c6557ea88568a4e3ace775ab55e93f2f4f9d57"
+checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
 
 [[package]]
 name = "proc-macro2"
@@ -241,22 +241,22 @@ dependencies = [
 
 [[package]]
 name = "quote"
-version = "1.0.31"
+version = "1.0.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fe8a65d69dd0808184ebb5f836ab526bb259db23c657efa38711b1072ee47f0"
+checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
 dependencies = [
  "proc-macro2",
 ]
 
 [[package]]
 name = "regex"
-version = "1.9.1"
+version = "1.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575"
+checksum = "12de2eff854e5fa4b1295edd650e227e9d8fb0c9e90b12e7f36d6a6811791a29"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-automata 0.3.3",
+ "regex-automata 0.3.7",
  "regex-syntax",
 ]
 
@@ -268,9 +268,9 @@ checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
 
 [[package]]
 name = "regex-automata"
-version = "0.3.3"
+version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39354c10dd07468c2e73926b23bb9c2caca74c5501e38a35da70406f1d923310"
+checksum = "49530408a136e16e5b486e883fbb6ba058e8e4e8ae6621a77b048b314336e629"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -279,9 +279,9 @@ dependencies = [
 
 [[package]]
 name = "regex-syntax"
-version = "0.7.4"
+version = "0.7.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2"
+checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da"
 
 [[package]]
 name = "same-file"
@@ -294,22 +294,22 @@ dependencies = [
 
 [[package]]
 name = "serde"
-version = "1.0.171"
+version = "1.0.188"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30e27d1e4fd7659406c492fd6cfaf2066ba8773de45ca75e855590f856dc34a9"
+checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.171"
+version = "1.0.188"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "389894603bd18c46fa56231694f8d827779c0951a667087194cf9de94ed24682"
+checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.29",
 ]
 
 [[package]]
@@ -342,9 +342,9 @@ dependencies = [
 
 [[package]]
 name = "similar-asserts"
-version = "1.4.2"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbf644ad016b75129f01a34a355dcb8d66a5bc803e417c7a77cc5d5ee9fa0f18"
+checksum = "e041bb827d1bfca18f213411d51b665309f1afb37a04a5d1464530e13779fc0f"
 dependencies = [
  "console",
  "similar",
@@ -352,9 +352,9 @@ dependencies = [
 
 [[package]]
 name = "siphasher"
-version = "0.3.10"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de"
+checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d"
 
 [[package]]
 name = "smallvec"
@@ -375,9 +375,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.26"
+version = "2.0.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45c3457aacde3c65315de5031ec191ce46604304d2446e803d71ade03308d970"
+checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -448,7 +448,7 @@ checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.26",
+ "syn 2.0.29",
 ]
 
 [[package]]
@@ -504,7 +504,7 @@ dependencies = [
 
 [[package]]
 name = "typstfmt"
-version = "0.1.0"
+version = "0.2.1"
 dependencies = [
  "lexopt",
  "typstfmt_lib",
@@ -512,7 +512,7 @@ dependencies = [
 
 [[package]]
 name = "typstfmt_lib"
-version = "0.1.0"
+version = "0.2.1"
 dependencies = [
  "globmatch",
  "insta",
@@ -666,9 +666,9 @@ checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
 
 [[package]]
 name = "winnow"
-version = "0.5.0"
+version = "0.5.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81fac9742fd1ad1bd9643b991319f72dd031016d44b77039a26977eb667141e7"
+checksum = "7c2e3184b9c4e92ad5167ca73039d0c42476302ab603e2fec4487511f38ccefc"
 dependencies = [
  "memchr",
 ]
diff --git a/nixpkgs/pkgs/tools/typesetting/typstfmt/default.nix b/nixpkgs/pkgs/tools/typesetting/typstfmt/default.nix
index 5e83892f528a..2a2fb16d8478 100644
--- a/nixpkgs/pkgs/tools/typesetting/typstfmt/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/typstfmt/default.nix
@@ -1,14 +1,14 @@
 { lib, rustPlatform, fetchFromGitHub }:
 
-rustPlatform.buildRustPackage {
+rustPlatform.buildRustPackage rec {
   pname = "typstfmt";
-  version = "unstable-2023-08-15";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
     owner = "astrale-sharp";
     repo = "typstfmt";
-    rev = "0e5cf2769ef46ca8f6627c688cb8f848ee279a88";
-    hash = "sha256-xdmEixbINjVjXlGwdBqDPcd4YHcT/WeswlRNEwpnfx4=";
+    rev = version;
+    hash = "sha256-cxiT8QVioZ7cGdkxsa8ampwNBWcdpAu4fO1ijfviHhI=";
   };
 
   cargoLock = {
@@ -21,6 +21,7 @@ rustPlatform.buildRustPackage {
   meta = with lib; {
     description = "A formatter for the Typst language";
     homepage = "https://github.com/astrale-sharp/typstfmt";
+    changelog = "https://github.com/astrale-sharp/typstfmt/blob/${src.rev}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ figsoda geri1701 ];
   };
diff --git a/nixpkgs/pkgs/tools/typesetting/xmlroff/default.nix b/nixpkgs/pkgs/tools/typesetting/xmlroff/default.nix
index 69c48120b061..dd8adab9ee8a 100644
--- a/nixpkgs/pkgs/tools/typesetting/xmlroff/default.nix
+++ b/nixpkgs/pkgs/tools/typesetting/xmlroff/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     popt
   ];
 
-  sourceRoot = "${src.name}/xmlroff/";
+  sourceRoot = "${src.name}/xmlroff";
 
   enableParallelBuilding = true;
 
diff --git a/nixpkgs/pkgs/tools/virtualization/awsebcli/default.nix b/nixpkgs/pkgs/tools/virtualization/awsebcli/default.nix
index 01b05b5481f5..64d5022c2de8 100644
--- a/nixpkgs/pkgs/tools/virtualization/awsebcli/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/awsebcli/default.nix
@@ -23,16 +23,21 @@ let
 in
 with localPython.pkgs; buildPythonApplication rec {
   pname = "awsebcli";
-  version = "3.20.7";
+  version = "3.20.9";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "aws";
     repo = "aws-elastic-beanstalk-cli";
     rev = "refs/tags/${version}";
-    hash = "sha256-DxjoEkFnY4aSfxVKPpnJLmnjLtZnlM74XXd0K8mcdoY=";
+    hash = "sha256-tnBDEeR+SCHb9UT3pTO7ISm4TVICvVfrV5cfz/60YQY=";
   };
 
+  postPatch = ''
+    # https://github.com/aws/aws-elastic-beanstalk-cli/pull/469
+    substituteInPlace setup.py --replace "scripts=['bin/eb']," ""
+  '';
+
   nativeBuildInputs = [
     pythonRelaxDepsHook
   ];
diff --git a/nixpkgs/pkgs/tools/virtualization/google-guest-oslogin/default.nix b/nixpkgs/pkgs/tools/virtualization/google-guest-oslogin/default.nix
index 32ca1ed00355..bb4374b1ec6b 100644
--- a/nixpkgs/pkgs/tools/virtualization/google-guest-oslogin/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/google-guest-oslogin/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "google-guest-oslogin";
-  version = "20230808.00";
+  version = "20230821.01";
 
   src = fetchFromGitHub {
     owner = "GoogleCloudPlatform";
     repo = "guest-oslogin";
     rev = version;
-    sha256 = "sha256-6CHMnoPrfXFAgTyIoGPsMos9CaW6W0zcbpIG1j7DRqk=";
+    sha256 = "sha256-1/iXn4jN44eZCLRYCDSsEz7WDnTsAwxxB62jvIRjvoU=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/virtualization/mkosi/default.nix b/nixpkgs/pkgs/tools/virtualization/mkosi/default.nix
index 345e65d04881..8fc5376e4c2c 100644
--- a/nixpkgs/pkgs/tools/virtualization/mkosi/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/mkosi/default.nix
@@ -1,6 +1,8 @@
 { lib
 , fetchFromGitHub
 , setuptools
+, setuptools-scm
+, wheel
 , buildPythonApplication
 , pytestCheckHook
 , bubblewrap
@@ -41,9 +43,10 @@ buildPythonApplication rec {
 
   nativeBuildInputs = [
     setuptools
+    setuptools-scm
+    wheel
   ];
 
-
   propagatedBuildInputs = [
     systemdForMkosi
     bubblewrap
diff --git a/nixpkgs/pkgs/tools/virtualization/reg/default.nix b/nixpkgs/pkgs/tools/virtualization/reg/default.nix
index eaa937f6f326..84aecc3ff671 100644
--- a/nixpkgs/pkgs/tools/virtualization/reg/default.nix
+++ b/nixpkgs/pkgs/tools/virtualization/reg/default.nix
@@ -12,7 +12,7 @@ buildGoModule rec {
     owner = "genuinetools";
     repo = "reg";
     rev = "v${version}";
-    sha256 = "1jlza1czfssssi3y9zi6kr8k9msfa7vp215ibhwbz4h97av5xw5m";
+    hash = "sha256-tfBetjoJkr84XLEEcfdRTtc0UZ4m/uRH1Fpr91lQn8o=";
   };
 
   patches = [
@@ -29,7 +29,7 @@ buildGoModule rec {
     })
   ];
 
-  vendorSha256 = null;
+  vendorHash = null;
   doCheck = false;
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/wayland/shotman/Cargo.lock b/nixpkgs/pkgs/tools/wayland/shotman/Cargo.lock
deleted file mode 100644
index ed9518ea6e28..000000000000
--- a/nixpkgs/pkgs/tools/wayland/shotman/Cargo.lock
+++ /dev/null
@@ -1,1148 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "adler"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-
-[[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 = "anyhow"
-version = "1.0.68"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61"
-
-[[package]]
-name = "atty"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-dependencies = [
- "hermit-abi 0.1.19",
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "autocfg"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "bumpalo"
-version = "3.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "572f695136211188308f16ad2ca5c851a712c464060ae6974944458eb83880ba"
-
-[[package]]
-name = "calloop"
-version = "0.10.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a59225be45a478d772ce015d9743e49e92798ece9e34eda9a6aa2a6a7f40192"
-dependencies = [
- "futures-util",
- "log",
- "nix 0.25.1",
- "slotmap",
- "thiserror",
- "vec_map",
-]
-
-[[package]]
-name = "cc"
-version = "1.0.78"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a20104e2335ce8a659d6dd92a51a767a0c062599c73b343fd152cb401e828c3d"
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-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",
-]
-
-[[package]]
-name = "clap"
-version = "4.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f13b9c79b5d1dd500d20ef541215a6423c75829ef43117e1b4d17fd8af0b5d76"
-dependencies = [
- "bitflags",
- "clap_derive",
- "clap_lex",
- "is-terminal",
- "once_cell",
- "strsim",
- "termcolor",
-]
-
-[[package]]
-name = "clap_complete"
-version = "4.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d6540eedc41f8a5a76cf3d8d458057dcdf817be4158a55b5f861f7a5483de75"
-dependencies = [
- "clap",
-]
-
-[[package]]
-name = "clap_derive"
-version = "4.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "684a277d672e91966334af371f1a7b5833f9aa00b07c84e92fbce95e00208ce8"
-dependencies = [
- "heck",
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "clap_lex"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d4198f73e42b4936b35b5bb248d81d2b595ecb170da0bac7655c54eedfa8da8"
-dependencies = [
- "os_str_bytes",
-]
-
-[[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 = "colored"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3616f750b84d8f0de8a58bda93e08e2a81ad3f523089b05f1dffecab48c6cbd"
-dependencies = [
- "atty",
- "lazy_static",
- "winapi",
-]
-
-[[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"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "cxx"
-version = "1.0.86"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51d1075c37807dcf850c379432f0df05ba52cc30f279c5cfc43cc221ce7f8579"
-dependencies = [
- "cc",
- "cxxbridge-flags",
- "cxxbridge-macro",
- "link-cplusplus",
-]
-
-[[package]]
-name = "cxx-build"
-version = "1.0.86"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5044281f61b27bc598f2f6647d480aed48d2bf52d6eb0b627d84c0361b17aa70"
-dependencies = [
- "cc",
- "codespan-reporting",
- "once_cell",
- "proc-macro2",
- "quote",
- "scratch",
- "syn",
-]
-
-[[package]]
-name = "cxxbridge-flags"
-version = "1.0.86"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61b50bc93ba22c27b0d31128d2d130a0a6b3d267ae27ef7e4fae2167dfe8781c"
-
-[[package]]
-name = "cxxbridge-macro"
-version = "1.0.86"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39e61fda7e62115119469c7b3591fd913ecca96fb766cfd3f2e2502ab7bc87a5"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "dlib"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac1b7517328c04c2aa68422fc60a41b92208182142ed04a25879c26c8f878794"
-dependencies = [
- "libloading",
-]
-
-[[package]]
-name = "downcast-rs"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
-
-[[package]]
-name = "either"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797"
-
-[[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-dragonfly"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
-dependencies = [
- "cc",
- "libc",
-]
-
-[[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 = "futures"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38390104763dc37a5145a53c29c63c1290b5d316d6086ec32c293f6736051bb0"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-sink",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
-name = "futures-channel"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed"
-dependencies = [
- "futures-core",
- "futures-sink",
-]
-
-[[package]]
-name = "futures-core"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac"
-
-[[package]]
-name = "futures-io"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00f5fb52a06bdcadeb54e8d3671f8888a39697dcb0b81b23b55174030427f4eb"
-
-[[package]]
-name = "futures-sink"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9"
-
-[[package]]
-name = "futures-task"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea"
-
-[[package]]
-name = "futures-util"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-sink",
- "futures-task",
- "memchr",
- "pin-project-lite",
- "pin-utils",
- "slab",
-]
-
-[[package]]
-name = "heck"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
-
-[[package]]
-name = "hermit-abi"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "hermit-abi"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7"
-dependencies = [
- "libc",
-]
-
-[[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",
-]
-
-[[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 = "io-lifetimes"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7d6c6f8c91b4b9ed43484ad1a938e393caf35960fce7f82a040497207bd8e9e"
-dependencies = [
- "libc",
- "windows-sys",
-]
-
-[[package]]
-name = "is-terminal"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28dfb6c8100ccc63462345b67d1bbc3679177c75ee4bf59bf29c8b1d110b8189"
-dependencies = [
- "hermit-abi 0.2.6",
- "io-lifetimes",
- "rustix",
- "windows-sys",
-]
-
-[[package]]
-name = "itertools"
-version = "0.10.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
-dependencies = [
- "either",
-]
-
-[[package]]
-name = "itoa"
-version = "1.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440"
-
-[[package]]
-name = "js-sys"
-version = "0.3.60"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47"
-dependencies = [
- "wasm-bindgen",
-]
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-[[package]]
-name = "libc"
-version = "0.2.139"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
-
-[[package]]
-name = "libloading"
-version = "0.7.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
-dependencies = [
- "cfg-if",
- "winapi",
-]
-
-[[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.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "memchr"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
-
-[[package]]
-name = "memmap2"
-version = "0.5.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b182332558b18d807c4ce1ca8ca983b34c3ee32765e47b3f0f69b90355cc1dc"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "memoffset"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "memoffset"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "minimal-lexical"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
-
-[[package]]
-name = "miniz_oxide"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"
-dependencies = [
- "adler",
-]
-
-[[package]]
-name = "nix"
-version = "0.25.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4"
-dependencies = [
- "autocfg",
- "bitflags",
- "cfg-if",
- "libc",
- "memoffset 0.6.5",
-]
-
-[[package]]
-name = "nix"
-version = "0.26.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46a58d1d356c6597d08cde02c2f09d785b09e28711837b1ed667dc652c08a694"
-dependencies = [
- "bitflags",
- "cfg-if",
- "libc",
- "memoffset 0.7.1",
- "static_assertions",
-]
-
-[[package]]
-name = "nom"
-version = "7.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5507769c4919c998e69e49c839d9dc6e693ede4cc4290d6ad8b41d4f09c548c"
-dependencies = [
- "memchr",
- "minimal-lexical",
-]
-
-[[package]]
-name = "num-integer"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
-dependencies = [
- "autocfg",
- "num-traits",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "once_cell"
-version = "1.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66"
-
-[[package]]
-name = "os_str_bytes"
-version = "6.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee"
-
-[[package]]
-name = "pin-project-lite"
-version = "0.2.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
-
-[[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.26"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
-
-[[package]]
-name = "png"
-version = "0.17.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d708eaf860a19b19ce538740d2b4bdeeb8337fa53f7738455e706623ad5c638"
-dependencies = [
- "bitflags",
- "crc32fast",
- "flate2",
- "miniz_oxide",
-]
-
-[[package]]
-name = "proc-macro-error"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
-dependencies = [
- "proc-macro-error-attr",
- "proc-macro2",
- "quote",
- "syn",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
-dependencies = [
- "proc-macro2",
- "quote",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.49"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57a8eca9f9c4ffde41714334dee777596264c7825420f521abc92b5b5deb63a5"
-dependencies = [
- "unicode-ident",
-]
-
-[[package]]
-name = "quick-xml"
-version = "0.23.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11bafc859c6815fbaffbbbf4229ecb767ac913fecb27f9ad4343662e9ef099ea"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "rustix"
-version = "0.36.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4feacf7db682c6c329c4ede12649cd36ecab0f3be5b7d74e6a20304725db4549"
-dependencies = [
- "bitflags",
- "errno",
- "io-lifetimes",
- "libc",
- "linux-raw-sys",
- "windows-sys",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde"
-
-[[package]]
-name = "scoped-tls"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
-
-[[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.152"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.152"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.91"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883"
-dependencies = [
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "shotman"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "calloop",
- "chrono",
- "clap",
- "futures",
- "itertools",
- "log",
- "memmap2",
- "nom",
- "png",
- "rustix",
- "serde",
- "serde_json",
- "simple_logger",
- "smithay-client-toolkit",
- "thiserror",
- "wayland-client",
- "wayland-protocols",
- "wayland-protocols-wlr",
-]
-
-[[package]]
-name = "shotman_completions"
-version = "0.1.0"
-dependencies = [
- "clap",
- "clap_complete",
- "shotman",
-]
-
-[[package]]
-name = "simple_logger"
-version = "2.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48047e77b528151aaf841a10a9025f9459da80ba820e425ff7eb005708a76dc7"
-dependencies = [
- "atty",
- "colored",
- "log",
- "winapi",
-]
-
-[[package]]
-name = "slab"
-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 = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342"
-dependencies = [
- "version_check",
-]
-
-[[package]]
-name = "smallvec"
-version = "1.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
-
-[[package]]
-name = "smithay-client-toolkit"
-version = "0.16.0"
-source = "git+https://github.com/Smithay/client-toolkit.git#327f9cd791d8810fe7324ee1ddd48adaf3592ca4"
-dependencies = [
- "bitflags",
- "calloop",
- "dlib",
- "lazy_static",
- "log",
- "memmap2",
- "nix 0.26.1",
- "pkg-config",
- "thiserror",
- "wayland-backend",
- "wayland-client",
- "wayland-cursor",
- "wayland-protocols",
- "wayland-protocols-wlr",
- "wayland-scanner",
- "xkbcommon",
-]
-
-[[package]]
-name = "static_assertions"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-
-[[package]]
-name = "strsim"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
-
-[[package]]
-name = "syn"
-version = "1.0.107"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "termcolor"
-version = "1.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "thiserror"
-version = "1.0.38"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0"
-dependencies = [
- "thiserror-impl",
-]
-
-[[package]]
-name = "thiserror-impl"
-version = "1.0.38"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "unicode-ident"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc"
-
-[[package]]
-name = "unicode-width"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
-
-[[package]]
-name = "vec_map"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
-
-[[package]]
-name = "version_check"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
-
-[[package]]
-name = "wasm-bindgen"
-version = "0.2.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268"
-dependencies = [
- "cfg-if",
- "wasm-bindgen-macro",
-]
-
-[[package]]
-name = "wasm-bindgen-backend"
-version = "0.2.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142"
-dependencies = [
- "bumpalo",
- "log",
- "once_cell",
- "proc-macro2",
- "quote",
- "syn",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-macro"
-version = "0.2.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810"
-dependencies = [
- "quote",
- "wasm-bindgen-macro-support",
-]
-
-[[package]]
-name = "wasm-bindgen-macro-support"
-version = "0.2.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
- "wasm-bindgen-backend",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-shared"
-version = "0.2.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f"
-
-[[package]]
-name = "wayland-backend"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb23bfea266c92bb051ea36cce0eb1a52b743dc1c5f168021947eda79764656d"
-dependencies = [
- "cc",
- "downcast-rs",
- "io-lifetimes",
- "nix 0.26.1",
- "scoped-tls",
- "smallvec",
- "wayland-sys",
-]
-
-[[package]]
-name = "wayland-client"
-version = "0.30.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a925bd68c8b652af4e6f11a32410bd31bf84061c5ef279ed081520c60f203b4"
-dependencies = [
- "bitflags",
- "nix 0.26.1",
- "wayland-backend",
- "wayland-scanner",
-]
-
-[[package]]
-name = "wayland-cursor"
-version = "0.30.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d0c3a0d5b4b688b07b0442362d3ed6bf04724fcc16cd69ab6285b90dbc487aa"
-dependencies = [
- "nix 0.26.1",
- "wayland-client",
- "xcursor",
-]
-
-[[package]]
-name = "wayland-protocols"
-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 = "fce991093320e4a6a525876e6b629ab24da25f9baef0c2e0080ad173ec89588a"
-dependencies = [
- "bitflags",
- "wayland-backend",
- "wayland-client",
- "wayland-protocols",
- "wayland-scanner",
-]
-
-[[package]]
-name = "wayland-scanner"
-version = "0.30.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4834c14b3edf1d9986c83ca79b1e7e3afbe9874c7c144702f6467063259ce45d"
-dependencies = [
- "proc-macro2",
- "quick-xml",
- "quote",
-]
-
-[[package]]
-name = "wayland-sys"
-version = "0.30.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96b2a02ac608e07132978689a6f9bf4214949c85998c247abadd4f4129b1aa06"
-dependencies = [
- "dlib",
- "log",
- "pkg-config",
-]
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-util"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "windows-sys"
-version = "0.42.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
-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 = "xcursor"
-version = "0.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "463705a63313cd4301184381c5e8042f0a7e9b4bb63653f216311d4ae74690b7"
-dependencies = [
- "nom",
-]
-
-[[package]]
-name = "xkbcommon"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acbee136714379ab22da0280207fdb7f47e0bb940adea97731b65598b8c7a92e"
-dependencies = [
- "libc",
- "memmap2",
-]
diff --git a/nixpkgs/pkgs/tools/wayland/shotman/default.nix b/nixpkgs/pkgs/tools/wayland/shotman/default.nix
index 1835fc12c66f..08de35f14d3f 100644
--- a/nixpkgs/pkgs/tools/wayland/shotman/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/shotman/default.nix
@@ -9,21 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "shotman";
-  version = "0.4.3";
+  version = "0.4.5";
 
   src = fetchFromSourcehut {
     owner = "~whynothugo";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-c2fgP6XB/fqKfsjqRRQpOFzHZyF/a9tLAKIGdKFAcSQ=";
+    hash = "sha256-SctWNhYCFTAOOnDEcsFZH61+QQAcmup11GVVXA1U5Dw=";
   };
 
-  cargoLock = {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "smithay-client-toolkit-0.16.0" = "sha256-n+s+qH39tna0yN44D6GGlQGZHjsr9FBpp+NZItyqwaE=";
-    };
-  };
+  cargoHash = "sha256-q5scdgfB5NgtjAgnIy/+c+y/mymF0b9ZZSz2LmM0pfw=";
 
   nativeBuildInputs = [ pkg-config makeWrapper ];
 
@@ -39,6 +34,6 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://git.sr.ht/~whynothugo/shotman";
     license = licenses.isc;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ zendo ];
+    maintainers = with maintainers; [ zendo fpletz ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/wayland/stacktile/default.nix b/nixpkgs/pkgs/tools/wayland/stacktile/default.nix
new file mode 100644
index 000000000000..073794e42b98
--- /dev/null
+++ b/nixpkgs/pkgs/tools/wayland/stacktile/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, stdenv
+, fetchFromSourcehut
+, wayland
+, wayland-scanner
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "stacktile";
+  version = "1.0.0";
+
+  src = fetchFromSourcehut {
+    owner = "~leon_plickat";
+    repo = "stacktile";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-IOFxgYMjh92jx2CPfBRZDL/1ucgfHtUyAL5rS2EG+Gc=";
+  };
+
+  outputs = [ "out" "man" ];
+
+  nativeBuildInputs = [
+    wayland-scanner
+  ];
+
+  buildInputs = [
+    wayland
+  ];
+
+  makeFlags = [
+    "PREFIX=${placeholder "out"}"
+    "MANDIR=${placeholder "man"}/share/man"
+  ];
+
+  strictDeps = true;
+
+  meta = {
+    homepage = "https://sr.ht/~leon_plickat/stacktile/";
+    description = "Layout generator for the river Wayland compositor";
+    license = with lib.licenses; [ gpl3Plus ];
+    mainProgram = "stacktile";
+    maintainers = with lib.maintainers; [ AndersonTorres ];
+    platforms = lib.platforms.linux;
+  };
+})
diff --git a/nixpkgs/pkgs/tools/wayland/wl-clipboard/default.nix b/nixpkgs/pkgs/tools/wayland/wl-clipboard/default.nix
index 141e2e11d025..8d812ac1685b 100644
--- a/nixpkgs/pkgs/tools/wayland/wl-clipboard/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/wl-clipboard/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wl-clipboard";
-  version = "2.2.0";
+  version = "2.2.1";
 
   src = fetchFromGitHub {
     owner = "bugaevc";
     repo = "wl-clipboard";
     rev = "v${version}";
-    hash = "sha256-L4k2jOZ2YtkFpDs2+LAUElYl5aNSC42QxkbMNJ2ZhWQ=";
+    hash = "sha256-BYRXqVpGt9FrEBYQpi2kHPSZyeMk9o1SXkxjjcduhiY=";
   };
 
   strictDeps = true;
diff --git a/nixpkgs/pkgs/tools/wayland/wl-screenrec/default.nix b/nixpkgs/pkgs/tools/wayland/wl-screenrec/default.nix
index 8f09b806f6af..c7f42cba6430 100644
--- a/nixpkgs/pkgs/tools/wayland/wl-screenrec/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/wl-screenrec/default.nix
@@ -34,6 +34,7 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://github.com/russelltg/wl-screenrec";
     license = licenses.asl20;
     platforms = platforms.linux;
+    mainProgram = "wl-screenrec";
     maintainers = with maintainers; [ colemickens ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/wayland/wlr-which-key/default.nix b/nixpkgs/pkgs/tools/wayland/wlr-which-key/default.nix
index 470242871c78..d333f1525402 100644
--- a/nixpkgs/pkgs/tools/wayland/wlr-which-key/default.nix
+++ b/nixpkgs/pkgs/tools/wayland/wlr-which-key/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wlr-which-key";
-  version = "0.1.0";
+  version = "0.1.1";
 
   src = fetchFromGitHub {
     owner = "MaxVerevkin";
     repo = "wlr-which-key";
     rev = "v${version}";
-    hash = "sha256-GLTbUa5EfpJV7OACTlewAgGjd5Ub0fYHoW8f+EVrT14=";
+    hash = "sha256-FVpPS5EQ6+xZIBtdS18SdVx0TK9/ikryU9mtm5JvDgk=";
   };
 
-  cargoHash = "sha256-TtA4Ley5bwymF8Yiqso5fGAwGsT0GRlfAlGS5j4s0Qw=";
+  cargoHash = "sha256-JELvmG2CiknBP3QbaXSl1uj6wEgLaDFVFBuS1l5SUk4=";
 
   nativeBuildInputs = [
     pkg-config