diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 594acdffddd5..62d33178530f 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -13246,6 +13246,13 @@
githubId = 6391776;
name = "Nikita Voloboev";
};
+ niklaskorz = {
+ name = "Niklas Korz";
+ email = "niklas@niklaskorz.de";
+ matrix = "@niklaskorz:korz.dev";
+ github = "niklaskorz";
+ githubId = 590517;
+ };
NikolaMandic = {
email = "nikola@mandic.email";
github = "NikolaMandic";
@@ -17291,6 +17298,13 @@
githubId = 151924;
name = "John Anderson";
};
+ soopyc = {
+ name = "Cassie Cheung";
+ email = "me@soopy.moe";
+ github = "soopyc";
+ githubId = 13762043;
+ matrix = "@sophie:nue.soopy.moe";
+ };
sophrosyne = {
email = "joshuaortiz@tutanota.com";
github = "sophrosyne97";
diff --git a/nixos/doc/manual/release-notes/rl-2405.section.md b/nixos/doc/manual/release-notes/rl-2405.section.md
index c3cc7d63c520..a07f43dcbba8 100644
--- a/nixos/doc/manual/release-notes/rl-2405.section.md
+++ b/nixos/doc/manual/release-notes/rl-2405.section.md
@@ -130,6 +130,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
`globalRedirect` can now have redirect codes other than 301 through
`redirectCode`.
+- The source of the `mockgen` package has changed to the [go.uber.org/mock](https://github.com/uber-go/mock) fork because [the original repository is no longer maintained](https://github.com/golang/mock#gomock).
+
- [](#opt-boot.kernel.sysctl._net.core.wmem_max_) changed from a string to an integer because of the addition of a custom merge option (taking the highest value defined to avoid conflicts between 2 services trying to set that value), just as [](#opt-boot.kernel.sysctl._net.core.rmem_max_) since 22.11.
- `services.zfs.zed.enableMail` now uses the global `sendmail` wrapper defined by an email module
diff --git a/nixos/modules/services/mail/postfix.nix b/nixos/modules/services/mail/postfix.nix
index e8b5f832e66e..209e066a19ef 100644
--- a/nixos/modules/services/mail/postfix.nix
+++ b/nixos/modules/services/mail/postfix.nix
@@ -747,7 +747,7 @@ in
${concatStringsSep "\n" (mapAttrsToList (to: from: ''
ln -sf ${from} /var/lib/postfix/conf/${to}
- ${pkgs.postfix}/bin/postalias /var/lib/postfix/conf/${to}
+ ${pkgs.postfix}/bin/postalias -o -p /var/lib/postfix/conf/${to}
'') cfg.aliasFiles)}
${concatStringsSep "\n" (mapAttrsToList (to: from: ''
ln -sf ${from} /var/lib/postfix/conf/${to}
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index 21dbbc6ec75f..b55e4b9fa71f 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -257,6 +257,7 @@ in {
dolibarr = handleTest ./dolibarr.nix {};
domination = handleTest ./domination.nix {};
dovecot = handleTest ./dovecot.nix {};
+ drawterm = discoverTests (import ./drawterm.nix);
drbd = handleTest ./drbd.nix {};
dublin-traceroute = handleTest ./dublin-traceroute.nix {};
earlyoom = handleTestOn ["x86_64-linux"] ./earlyoom.nix {};
diff --git a/nixos/tests/drawterm.nix b/nixos/tests/drawterm.nix
new file mode 100644
index 000000000000..1d444bb55433
--- /dev/null
+++ b/nixos/tests/drawterm.nix
@@ -0,0 +1,58 @@
+{ system, pkgs }:
+let
+ tests = {
+ xorg = {
+ node = { pkgs, ... }: {
+ imports = [ ./common/user-account.nix ./common/x11.nix ];
+ services.xserver.enable = true;
+ services.xserver.displayManager.sessionCommands = ''
+ ${pkgs.drawterm}/bin/drawterm -g 1024x768 &
+ '';
+ test-support.displayManager.auto.user = "alice";
+ };
+ systems = [ "x86_64-linux" "aarch64-linux" ];
+ };
+ wayland = {
+ node = { pkgs, ... }: {
+ imports = [ ./common/wayland-cage.nix ];
+ services.cage.program = "${pkgs.drawterm-wayland}/bin/drawterm";
+ };
+ systems = [ "x86_64-linux" ];
+ };
+ };
+
+ mkTest = name: machine:
+ import ./make-test-python.nix ({ pkgs, ... }: {
+ inherit name;
+
+ nodes = { "${name}" = machine; };
+
+ meta = with pkgs.lib.maintainers; {
+ maintainers = [ moody ];
+ };
+
+ enableOCR = true;
+
+ testScript = ''
+ @polling_condition
+ def drawterm_running():
+ machine.succeed("pgrep drawterm")
+
+ start_all()
+
+ machine.wait_for_unit("graphical.target")
+ drawterm_running.wait() # type: ignore[union-attr]
+ machine.wait_for_text("cpu")
+ machine.send_chars("cpu\n")
+ machine.wait_for_text("auth")
+ machine.send_chars("cpu\n")
+ machine.wait_for_text("ending")
+ machine.screenshot("out.png")
+ '';
+
+ });
+ mkTestOn = systems: name: machine:
+ if pkgs.lib.elem system systems then mkTest name machine
+ else { ... }: { };
+in
+builtins.mapAttrs (k: v: mkTestOn v.systems k v.node { inherit system; }) tests
diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix
index 1c8f6ad4ee4d..6013edf9bce2 100644
--- a/pkgs/applications/editors/vim/plugins/generated.nix
+++ b/pkgs/applications/editors/vim/plugins/generated.nix
@@ -16335,5 +16335,29 @@ final: prev:
meta.homepage = "https://github.com/jhradilek/vim-snippets/";
};
+ palette-nvim = buildVimPlugin {
+ pname = "palette-nvim";
+ version = "2023-10-02";
+ src = fetchFromGitHub {
+ owner = "roobert";
+ repo = "palette.nvim";
+ rev = "a808c190a4f74f73782302152ebf323660d8db5f";
+ sha256 = "sha256-gCyDl+2fDa5CPpibxQnp+pJSkyRl0r03Sh3+IXIoQIQ=";
+ };
+ meta.homepage = "https://github.com/roobert/palette.nvim/";
+ };
+
+ obsidian-nvim = buildVimPlugin {
+ pname = "obsidian-nvim";
+ version = "2023-12-30";
+ src = fetchFromGitHub {
+ owner = "epwalsh";
+ repo = "obsidian.nvim";
+ rev = "88bf9150d9639a2cae3319e76abd7ab6b30d27f0";
+ sha256 = "sha256-irPk9iprbI4ijNUjMxXjw+DljudZ8aB3f/FJxXhFSoA=";
+ };
+ meta.homepage = "https://github.com/epwalsh/obsidian.nvim/";
+ };
+
}
diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix
index 96c831bb26bc..ff6ac32f88ca 100644
--- a/pkgs/applications/editors/vim/plugins/overrides.nix
+++ b/pkgs/applications/editors/vim/plugins/overrides.nix
@@ -929,6 +929,10 @@
dependencies = with self; [ promise-async ];
};
+ obsidian-nvim = super.obsidian-nvim.overrideAttrs {
+ dependencies = with self; [ plenary-nvim ];
+ };
+
octo-nvim = super.octo-nvim.overrideAttrs {
dependencies = with self; [ telescope-nvim plenary-nvim ];
};
diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names
index ead5cf15b28f..f3ca9a3ad026 100644
--- a/pkgs/applications/editors/vim/plugins/vim-plugin-names
+++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names
@@ -661,6 +661,7 @@ https://github.com/roxma/nvim-yarp/,,
https://github.com/haringsrob/nvim_context_vt/,,
https://github.com/neovim/nvimdev.nvim/,,
https://github.com/nvchad/nvterm/,HEAD,
+https://github.com/epwalsh/obsidian.nvim/,HEAD,
https://github.com/glepnir/oceanic-material/,,
https://github.com/mhartington/oceanic-next/,,
https://github.com/pwntester/octo.nvim/,,
@@ -685,6 +686,7 @@ https://github.com/nyoom-engineering/oxocarbon.nvim/,HEAD,
https://github.com/vuki656/package-info.nvim/,,
https://github.com/wbthomason/packer.nvim/,,
https://github.com/drewtempelmeyer/palenight.vim/,,
+https://github.com/roobert/palette.nvim/,HEAD,
https://github.com/NLKNguyen/papercolor-theme/,,
https://github.com/tmsvg/pear-tree/,,
https://github.com/steelsojka/pears.nvim/,,
diff --git a/pkgs/applications/emulators/cemu/default.nix b/pkgs/applications/emulators/cemu/default.nix
index 98ac7c66dfe6..7bc25ab058ab 100644
--- a/pkgs/applications/emulators/cemu/default.nix
+++ b/pkgs/applications/emulators/cemu/default.nix
@@ -33,13 +33,13 @@
stdenv.mkDerivation rec {
pname = "cemu";
- version = "2.0-59";
+ version = "2.0-61";
src = fetchFromGitHub {
owner = "cemu-project";
repo = "Cemu";
rev = "v${version}";
- hash = "sha256-dw77UkhyJ+XJLYWT6adUuTd+spqNr3/ZOMLaAVWgzmc=";
+ hash = "sha256-oKVVBie3Q3VtsHbh0wJfdlx1YnF424hib8mFRYnbgXY=";
};
patches = [
diff --git a/pkgs/applications/graphics/inkscape/extensions.nix b/pkgs/applications/graphics/inkscape/extensions.nix
index 48eb1f1f94b7..4499792cbbd0 100644
--- a/pkgs/applications/graphics/inkscape/extensions.nix
+++ b/pkgs/applications/graphics/inkscape/extensions.nix
@@ -44,6 +44,7 @@
mkdir -p $out/share/inkscape/extensions
cp ${inkcut}/share/inkscape/extensions/* $out/share/inkscape/extensions
'');
+ silhouette = callPackage ./extensions/silhouette { };
textext = callPackage ./extensions/textext {
pdflatex = texlive.combined.scheme-basic;
lualatex = texlive.combined.scheme-basic;
diff --git a/pkgs/applications/graphics/inkscape/extensions/silhouette/default.nix b/pkgs/applications/graphics/inkscape/extensions/silhouette/default.nix
new file mode 100644
index 000000000000..988b1ac3e9c8
--- /dev/null
+++ b/pkgs/applications/graphics/inkscape/extensions/silhouette/default.nix
@@ -0,0 +1,91 @@
+{ fetchFromGitHub
+, lib
+, gettext
+, pkgs
+, python3
+, umockdev
+, writeScript
+}:
+
+let
+ # We need these simple wrapper shell scripts because Inkscape extensions with
+ # interpreter="shell" always get invoked with the `sh` command [0], regardless of
+ # the shebang at the top of the script.
+ # [0]: https://gitlab.com/inkscape/inkscape/-/blob/d61d917afb94721c92a650b2c4b116b0a4826f41/src/extension/implementation/script.cpp#L93
+ launch-sendto_silhouette = writeScript "sendto_silhouette.sh" ''
+ cd $(dirname $0)
+ ./sendto_silhouette.py "$@"
+ '';
+ launch-silhouette_multi = writeScript "silhouette_multi.sh" ''
+ cd $(dirname $0)
+ ./silhouette_multi.py "$@"
+ '';
+in
+python3.pkgs.buildPythonApplication rec {
+ pname = "inkscape-silhouette";
+ version = "1.28";
+ format = "setuptools";
+
+ src = fetchFromGitHub {
+ owner = "fablabnbg";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "sha256-uNVhdkZFadL7QNlCsXq51TbhzRKH9KYDPDNCFhw3cQs=";
+ };
+
+ patches = [
+ ./interpreter.patch
+ ./use-prefix-for-udev.patch
+ ];
+
+ propagatedBuildInputs = [
+ python3.pkgs.pyusb
+ python3.pkgs.lxml
+ python3.pkgs.inkex
+ python3.pkgs.matplotlib
+ python3.pkgs.wxPython_4_2
+ python3.pkgs.xmltodict
+ ];
+
+ nativeBuildInputs = [
+ gettext # msgfmt
+ ];
+
+ nativeCheckInputs = [
+ python3.pkgs.pytestCheckHook
+ umockdev
+ ];
+
+ pytestFlagsArray = [
+ "test"
+ ];
+
+ doCheck = true;
+
+ installPhase = ''
+ runHook preInstall
+ make install PREFIX=$out
+ runHook postInstall
+ '';
+
+ postInstall = ''
+ # Unmark read_dump.py as executable so wrapPythonProgramsIn won't turn it
+ # into a shell script (thereby making it impossible to import as a Python
+ # module).
+ chmod -x $out/share/inkscape/extensions/silhouette/read_dump.py
+ cp ${launch-sendto_silhouette} $out/share/inkscape/extensions/sendto_silhouette.sh
+ cp ${launch-silhouette_multi} $out/share/inkscape/extensions/silhouette_multi.sh
+ '';
+
+ postFixup = ''
+ wrapPythonProgramsIn "$out/share/inkscape/extensions/" "$out $pythonPath"
+ '';
+
+ meta = with lib; {
+ description = "An extension to drive Silhouette vinyl cutters (e.g. Cameo, Portrait, Curio series) from within Inkscape.";
+ homepage = "https://github.com/fablabnbg/inkscape-silhouette";
+ license = licenses.gpl2Only;
+ maintainers = with maintainers; [ jfly ];
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/applications/graphics/inkscape/extensions/silhouette/interpreter.patch b/pkgs/applications/graphics/inkscape/extensions/silhouette/interpreter.patch
new file mode 100644
index 000000000000..1b9f7c3ebaa4
--- /dev/null
+++ b/pkgs/applications/graphics/inkscape/extensions/silhouette/interpreter.patch
@@ -0,0 +1,24 @@
+diff --git a/sendto_silhouette.inx b/sendto_silhouette.inx
+index 55a3278..d780730 100644
+--- a/sendto_silhouette.inx
++++ b/sendto_silhouette.inx
+@@ -188,6 +188,6 @@ Always use the least amount of blade possible.
+
+
+
+
+diff --git a/silhouette_multi.inx b/silhouette_multi.inx
+index f6fd2ed..2d9dba6 100644
+--- a/silhouette_multi.inx
++++ b/silhouette_multi.inx
+@@ -31,6 +31,6 @@
+
+
+
+
diff --git a/pkgs/applications/graphics/inkscape/extensions/silhouette/use-prefix-for-udev.patch b/pkgs/applications/graphics/inkscape/extensions/silhouette/use-prefix-for-udev.patch
new file mode 100644
index 000000000000..3e2d1ecfe905
--- /dev/null
+++ b/pkgs/applications/graphics/inkscape/extensions/silhouette/use-prefix-for-udev.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index 5aff25d..43c3fb0 100644
+--- a/Makefile
++++ b/Makefile
+@@ -22,7 +22,7 @@ VERS=$$(python3 ./sendto_silhouette.py --version)
+
+ DEST=$(DESTDIR)$(PREFIX)/share/inkscape/extensions
+ LOCALE=$(DESTDIR)$(PREFIX)/share/locale
+-UDEV=$(DESTDIR)/lib/udev
++UDEV=$(DESTDIR)$(PREFIX)/lib/udev
+ INKSCAPE_TEMPLATES=$(DESTDIR)$(PREFIX)/share/inkscape/templates
+
+ # User-specifc inkscape extensions folder for local install
diff --git a/pkgs/applications/graphics/inkscape/extensions/textext/default.nix b/pkgs/applications/graphics/inkscape/extensions/textext/default.nix
index c049458808a5..bb7ccd3e1896 100644
--- a/pkgs/applications/graphics/inkscape/extensions/textext/default.nix
+++ b/pkgs/applications/graphics/inkscape/extensions/textext/default.nix
@@ -20,13 +20,13 @@ let
in
python3.pkgs.buildPythonApplication rec {
pname = "textext";
- version = "1.8.1";
+ version = "1.10.1";
src = fetchFromGitHub {
owner = "textext";
repo = "textext";
rev = version;
- sha256 = "sha256-Qzd39X0X3DdwZ3pIIGvEbNjl6dxjDf3idzjwCkp3WRg=";
+ sha256 = "sha256-FbUfZfVOYEyQVL1YMyNwb/sIUxJ+VhevatjuJI/ocIw=";
};
patches = [
diff --git a/pkgs/applications/misc/clipqr/default.nix b/pkgs/applications/misc/clipqr/default.nix
index 8e9852334e20..d9265b2d1135 100644
--- a/pkgs/applications/misc/clipqr/default.nix
+++ b/pkgs/applications/misc/clipqr/default.nix
@@ -17,13 +17,13 @@
buildGoModule rec {
pname = "clipqr";
- version = "1.1.0";
+ version = "1.2.0";
src = fetchFromGitLab {
owner = "imatt-foss";
repo = "clipqr";
rev = "v${version}";
- hash = "sha256-OQ45GV+bViIejGC03lAuvw/y8v1itA+6pFC4H/qL744=";
+ hash = "sha256-gfKCuTZY9VsiXMlw6XX6YylMO4xGoLQU/5QvnDV7GbE=";
};
vendorHash = null;
diff --git a/pkgs/applications/misc/elf-dissector/default.nix b/pkgs/applications/misc/elf-dissector/default.nix
index cae1b7b4d885..588dd7539b7e 100644
--- a/pkgs/applications/misc/elf-dissector/default.nix
+++ b/pkgs/applications/misc/elf-dissector/default.nix
@@ -1,24 +1,26 @@
{ lib
, stdenv
-, fetchgit
+, fetchFromGitLab
, cmake
+, elfutils
, extra-cmake-modules
-, wrapQtAppsHook
, kitemmodels
, libiberty
-, libelf
, libdwarf
, libopcodes
+, wrapQtAppsHook
}:
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
pname = "elf-dissector";
- version = "unstable-2023-06-06";
+ version = "unstable-2023-12-24";
- src = fetchgit {
- url = "https://invent.kde.org/sdk/elf-dissector.git";
- rev = "de2e80438176b4b513150805238f3333f660718c";
- hash = "sha256-2yHPVPu6cncXhFCJvrSodcRFVAxj4vn+e99WhtiZniM=";
+ src = fetchFromGitLab {
+ domain = "invent.kde.org";
+ owner = "sdk";
+ repo = "elf-dissector";
+ rev = "613538bd1d87ce72d5115646551a49cf7ff2ee34";
+ hash = "sha256-fQFGFw8nZHMs8J1W2CcHAJCdcvaY2l2/CySyBSsKpyE=";
};
patches = [
@@ -27,12 +29,12 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake extra-cmake-modules wrapQtAppsHook ];
- buildInputs = [ kitemmodels libiberty libelf libdwarf libopcodes ];
+ buildInputs = [ kitemmodels libiberty elfutils libopcodes libdwarf ];
meta = with lib; {
homepage = "https://invent.kde.org/sdk/elf-dissector";
description = "Tools for inspecting, analyzing and optimizing ELF files";
license = licenses.gpl2;
- maintainers = with maintainers; [ ehmry ];
+ maintainers = with maintainers; [ ehmry philiptaron ];
};
}
diff --git a/pkgs/applications/misc/elf-dissector/fix_build_for_src_lib_disassembler_disassembler.diff b/pkgs/applications/misc/elf-dissector/fix_build_for_src_lib_disassembler_disassembler.diff
index 3edb17201808..ccc31c45ccde 100644
--- a/pkgs/applications/misc/elf-dissector/fix_build_for_src_lib_disassembler_disassembler.diff
+++ b/pkgs/applications/misc/elf-dissector/fix_build_for_src_lib_disassembler_disassembler.diff
@@ -1,12 +1,16 @@
diff --git a/src/lib/disassmbler/disassembler.cpp b/src/lib/disassmbler/disassembler.cpp
-index 3277544..e77ffc4 100644
+index 8ff058e..dbd4bbe 100644
--- a/src/lib/disassmbler/disassembler.cpp
+++ b/src/lib/disassmbler/disassembler.cpp
-@@ -127,7 +127,7 @@ QString Disassembler::disassembleBinutils(const unsigned char* data, uint64_t si
+@@ -144,11 +144,7 @@ QString Disassembler::disassembleBinutils(const unsigned char* data, uint64_t si
QString result;
disassembler_ftype disassemble_fn;
disassemble_info info;
+-#if BINUTILS_VERSION >= BINUTILS_VERSION_CHECK(2, 39)
+- INIT_DISASSEMBLE_INFO(info, &result, qstring_printf, fprintf_styled);
+-#else
- INIT_DISASSEMBLE_INFO(info, &result, qstring_printf);
+-#endif
+ INIT_DISASSEMBLE_INFO(info, &result, qstring_printf, qstring_printf);
info.application_data = this;
diff --git a/pkgs/applications/misc/writefreely/default.nix b/pkgs/applications/misc/writefreely/default.nix
index 17f03c787d94..9f2d6743c387 100644
--- a/pkgs/applications/misc/writefreely/default.nix
+++ b/pkgs/applications/misc/writefreely/default.nix
@@ -1,25 +1,19 @@
-{ lib, buildGoModule, fetchFromGitHub, go-bindata }:
+{ lib, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "writefreely";
- version = "0.13.2";
+ version = "0.14.0";
src = fetchFromGitHub {
- owner = "writeas";
+ owner = "writefreely";
repo = pname;
rev = "v${version}";
- sha256 = "sha256-GnuqYgiwXdKM+os5RzuUYe9ADOhZaxou5dD7GCEE1Ns=";
+ sha256 = "sha256-vOoTAr33FMQaHIwpwIX0g/KJWQvDn3oVJg14kEY6FIQ=";
};
- vendorHash = "sha256-IBer+8FP+IWWJPnaugr8zzQA9mSVFzP0Nofgl/PhtzQ=";
+ vendorHash = "sha256-xTo/zbz9pSjvNntr5dnytiJ7oRAdtEuyiu4mJZgwHTc=";
- nativeBuildInputs = [ go-bindata ];
-
- preBuild = ''
- make assets
- '';
-
- ldflags = [ "-s" "-w" "-X github.com/writeas/writefreely.softwareVer=${version}" ];
+ ldflags = [ "-s" "-w" "-X github.com/writefreely/writefreely.softwareVer=${version}" ];
tags = [ "sqlite" ];
@@ -27,8 +21,8 @@ buildGoModule rec {
meta = with lib; {
description = "Build a digital writing community";
- homepage = "https://github.com/writeas/writefreely";
+ homepage = "https://github.com/writefreely/writefreely";
license = licenses.agpl3Only;
- maintainers = with maintainers; [ ];
+ maintainers = with maintainers; [ soopyc ];
};
}
diff --git a/pkgs/applications/networking/instant-messengers/beeper/default.nix b/pkgs/applications/networking/instant-messengers/beeper/default.nix
index f7ac823caaad..4b1e33bd3ac1 100644
--- a/pkgs/applications/networking/instant-messengers/beeper/default.nix
+++ b/pkgs/applications/networking/instant-messengers/beeper/default.nix
@@ -11,11 +11,11 @@
}:
let
pname = "beeper";
- version = "3.90.11";
+ version = "3.90.22";
name = "${pname}-${version}";
src = fetchurl {
- url = "https://download.todesktop.com/2003241lzgn20jd/beeper-3.90.11-build-2312112f0wxx20y.AppImage";
- hash = "sha256-ZYv0PUvZiw8pcszCVCd7mHE/+VHb+I25OPu5R7vI1j4=";
+ url = "https://download.todesktop.com/2003241lzgn20jd/beeper-3.90.22-build-2312219r0azbdcp.AppImage";
+ hash = "sha256-gLceLWdY/0yAveV3IdoLbqForFKqyU3a9QQOVEJ9TIg=";
};
appimage = appimageTools.wrapType2 {
inherit version pname src;
diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
index 4eb5707fe256..46a7f821446c 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
@@ -120,7 +120,7 @@ stdenv.mkDerivation (finalAttrs: builtins.removeAttrs pinData [ "hashes" ] // {
genericName = "Matrix Client";
comment = finalAttrs.meta.description;
categories = [ "Network" "InstantMessaging" "Chat" ];
- startupWMClass = "element";
+ startupWMClass = "Element";
mimeTypes = [ "x-scheme-handler/element" ];
};
diff --git a/pkgs/applications/networking/mailreaders/meli/default.nix b/pkgs/applications/networking/mailreaders/meli/default.nix
index 1ce4c39da7a3..7de15eade835 100644
--- a/pkgs/applications/networking/mailreaders/meli/default.nix
+++ b/pkgs/applications/networking/mailreaders/meli/default.nix
@@ -22,15 +22,18 @@
rustPlatform.buildRustPackage rec {
pname = "meli";
- version = "0.8.2";
+ version = "0.8.4";
src = fetchgit {
- url = "https://git.meli.delivery/meli/meli.git";
+ url = "https://git.meli-email.org/meli/meli.git";
rev = "v${version}";
- hash = "sha256-iEHTFofga/HV/1jSAqTsqV55zC22tqI7UW7m4PZgz0M=";
+ hash = "sha256-wmIlYgXB17/i9Q+6C7pbcEjVlEuvhmqrSH+cDmaBKLs=";
};
- cargoHash = "sha256-ijlivyBezLECBSaWBYVy9tVcSO8U+yGDQyU4dIATR6k=";
+ cargoHash = "sha256-gYS/dxNMz/HkCmRXH5AdHPXJ2giqpAHc4eVXJGOpMDM=";
+
+ # Needed to get openssl-sys to use pkg-config
+ OPENSSL_NO_VENDOR=1;
nativeBuildInputs = [
pkg-config
diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix
index 714feb8ab495..1df9a4bbd028 100644
--- a/pkgs/applications/office/fava/default.nix
+++ b/pkgs/applications/office/fava/default.nix
@@ -2,12 +2,12 @@
python3.pkgs.buildPythonApplication rec {
pname = "fava";
- version = "1.26.3";
+ version = "1.26.4";
format = "pyproject";
src = fetchPypi {
inherit pname version;
- hash = "sha256-HjMcNZ+VV5PdTIW3q6Ja/gFIZl6xXDxk0pUCyIX4dPM=";
+ hash = "sha256-kQXojI57NYZgu3qXjtOL/a48YnXhuA6FEazhJ7jntqk=";
};
nativeBuildInputs = with python3.pkgs; [ setuptools-scm ];
diff --git a/pkgs/applications/office/portfolio/default.nix b/pkgs/applications/office/portfolio/default.nix
index db85a0f579ac..c426d342369e 100644
--- a/pkgs/applications/office/portfolio/default.nix
+++ b/pkgs/applications/office/portfolio/default.nix
@@ -27,11 +27,11 @@ let
in
stdenv.mkDerivation rec {
pname = "PortfolioPerformance";
- version = "0.66.2";
+ version = "0.67.0";
src = fetchurl {
url = "https://github.com/buchen/portfolio/releases/download/${version}/PortfolioPerformance-${version}-linux.gtk.x86_64.tar.gz";
- hash = "sha256-jUakjgprf561OVwBW25+/+q+r2CZ6H1iDM3n6w54IfI=";
+ hash = "sha256-bm38t8wgLEYZVDsMnOv3Wj6TgKu2s36wo8q0Sj7pPNI=";
};
nativeBuildInputs = [
diff --git a/pkgs/applications/science/logic/z3/default.nix b/pkgs/applications/science/logic/z3/default.nix
index 26848e1397aa..9ede6a922da6 100644
--- a/pkgs/applications/science/logic/z3/default.nix
+++ b/pkgs/applications/science/logic/z3/default.nix
@@ -89,8 +89,8 @@ let common = { version, sha256, patches ? [ ], tag ? "z3" }:
in
{
z3_4_12 = common {
- version = "4.12.2";
- sha256 = "sha256-DTgpKEG/LtCGZDnicYvbxG//JMLv25VHn/NaF307JYA=";
+ version = "4.12.4";
+ sha256 = "sha256-cxl7D47dRn+uMVOHbF0avj5+ZFWjaJ7lXj/8l6r9q2I=";
};
z3_4_11 = common {
version = "4.11.2";
diff --git a/pkgs/applications/terminal-emulators/roxterm/default.nix b/pkgs/applications/terminal-emulators/roxterm/default.nix
deleted file mode 100644
index e39b61499e19..000000000000
--- a/pkgs/applications/terminal-emulators/roxterm/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ at-spi2-core, cmake, dbus, dbus-glib, docbook_xsl, libepoxy, fetchFromGitHub
-, glib, gtk3, harfbuzz, libXdmcp, libXtst, libpthreadstubs
-, libselinux, libsepol, libtasn1, libxkbcommon, libxslt, p11-kit, pcre2
-, pkg-config, lib, stdenv, util-linuxMinimal, vte, wrapGAppsHook, xmlto, nixosTests
-}:
-
-stdenv.mkDerivation rec {
- pname = "roxterm";
- version = "3.14.2";
-
- src = fetchFromGitHub {
- owner = "realh";
- repo = "roxterm";
- rev = version;
- sha256 = "sha256-LBxVZ5Az0vGalbQd437of5a3aoZH51v6OKTfndHkkiM=";
- };
-
- nativeBuildInputs = [ cmake pkg-config wrapGAppsHook libxslt ];
-
- buildInputs =
- [ gtk3 dbus dbus-glib vte pcre2 harfbuzz libpthreadstubs libXdmcp
- util-linuxMinimal glib docbook_xsl xmlto libselinux
- libsepol libxkbcommon libepoxy at-spi2-core libXtst libtasn1 p11-kit
- ];
-
- passthru.tests.test = nixosTests.terminal-emulators.roxterm;
-
- meta = with lib; {
- homepage = "https://github.com/realh/roxterm";
- license = licenses.gpl3;
- description = "Tabbed, VTE-based terminal emulator";
- longDescription = ''
- Tabbed, VTE-based terminal emulator. Similar to gnome-terminal without
- the dependencies on Gnome.
- '';
- maintainers = with maintainers; [ ];
- platforms = platforms.linux;
- };
-}
diff --git a/pkgs/applications/video/mpv/scripts/buildLua.nix b/pkgs/applications/video/mpv/scripts/buildLua.nix
index cb29a4c9d1a9..0027fa722596 100644
--- a/pkgs/applications/video/mpv/scripts/buildLua.nix
+++ b/pkgs/applications/video/mpv/scripts/buildLua.nix
@@ -36,6 +36,9 @@ lib.makeOverridable (args: stdenvNoCC.mkDerivation (extendedBy
dontBuild = true;
preferLocalBuild = true;
+ # Prevent `patch` from emitting `.orig` files (that end up in the output)
+ patchFlags = [ "--no-backup-if-mismatch" "-p1" ];
+
outputHashMode = "recursive";
installPhase = ''
runHook preInstall
diff --git a/pkgs/applications/video/mpv/scripts/sponsorblock.nix b/pkgs/applications/video/mpv/scripts/sponsorblock.nix
index 35f5fcb549f1..077b8f0590b2 100644
--- a/pkgs/applications/video/mpv/scripts/sponsorblock.nix
+++ b/pkgs/applications/video/mpv/scripts/sponsorblock.nix
@@ -1,7 +1,7 @@
-{ lib, stdenvNoCC, fetchFromGitHub, fetchpatch, python3, nix-update-script }:
+{ lib, buildLua, fetchFromGitHub, fetchpatch, python3, nix-update-script }:
# Usage: `pkgs.mpv.override { scripts = [ pkgs.mpvScripts.sponsorblock ]; }`
-stdenvNoCC.mkDerivation {
+buildLua {
pname = "mpv_sponsorblock";
version = "unstable-2023-01-30";
@@ -12,8 +12,6 @@ stdenvNoCC.mkDerivation {
sha256 = "sha256-iUXaTWWFEdxhxClu2NYbQcThlvYty3A2dEYGooeAVAQ=";
};
- dontBuild = true;
-
patches = [
# Use XDG_DATA_HOME and XDG_CACHE_HOME if defined for UID and DB
# Necessary to avoid sponsorblock to write in the nix store at runtime.
@@ -34,23 +32,16 @@ stdenvNoCC.mkDerivation {
--replace 'mp.find_config_file("scripts")' "\"$out/share/mpv/scripts\""
'';
- installPhase = ''
- mkdir -p $out/share/mpv/scripts
- cp -r sponsorblock.lua sponsorblock_shared $out/share/mpv/scripts/
- '';
+ postInstall = "cp -a sponsorblock_shared $out/share/mpv/scripts/";
- passthru = {
- scriptName = "sponsorblock.lua";
- updateScript = nix-update-script {
- extraArgs = [ "--version=branch" ];
- };
+ passthru.updateScript = nix-update-script {
+ extraArgs = [ "--version=branch" ];
};
meta = with lib; {
description = "Script for mpv to skip sponsored segments of YouTube videos";
homepage = "https://github.com/po5/mpv_sponsorblock";
license = licenses.gpl3;
- platforms = platforms.all;
maintainers = with maintainers; [ pacien ];
};
}
diff --git a/pkgs/by-name/ar/armitage/package.nix b/pkgs/by-name/ar/armitage/package.nix
new file mode 100644
index 000000000000..2d07d215d0f6
--- /dev/null
+++ b/pkgs/by-name/ar/armitage/package.nix
@@ -0,0 +1,145 @@
+{ lib
+, stdenv
+, fetchurl
+, fetchFromGitHub
+, jdk11
+, gradle_6
+, perl
+, metasploit
+, makeWrapper
+, makeDesktopItem
+, copyDesktopItems
+, writeDarwinBundle
+}:
+
+let
+ pname = "armitage";
+ version = "unstable-2022-12-05";
+
+ src = fetchFromGitHub {
+ owner = "r00t0v3rr1d3";
+ repo = "armitage";
+ rev = "991244e9a0c0fc9302e48c4e708347c315f78b13";
+ hash = "sha256-0ik20wzE0cf6cC/HY6RwMHqkvqPFpZmOUyZyb5H3SHg=";
+ };
+
+ patches = [
+ (fetchurl {
+ name = "Remove-mentions-of-old-metasploit-versions.patch";
+ url = "https://gitlab.com/kalilinux/packages/armitage/-/raw/042beb7494a10227761ecb3ddabf4019bbb78681/debian/patches/Remove-mentions-of-old-metasploit-versions.patch";
+ hash = "sha256-VUey/e8kcBWqAxYTfIXoyTAoDR/UKZKqBJAKmdabArY=";
+ })
+ (fetchurl {
+ name = "Update-postgresql-version-to-support-scram-sha-256.patch";
+ url = "https://gitlab.com/kalilinux/packages/armitage/-/raw/042beb7494a10227761ecb3ddabf4019bbb78681/debian/patches/Update-postgresql-version-to-support-scram-sha-256.patch";
+ hash = "sha256-ZPvcRoUCrq32g0Mw8+EhNl8DlI+jMYUlFyPW1VScgzc=";
+ })
+ (fetchurl {
+ name = "fix-launch-script.patch";
+ url = "https://gitlab.com/kalilinux/packages/armitage/-/raw/042beb7494a10227761ecb3ddabf4019bbb78681/debian/patches/fix-launch-script.patch";
+ hash = "sha256-I6T7iwShQLn+ZHuKa117VOlItXjY4/51RDbjvNJEW/4=";
+ })
+ (fetchurl {
+ name = "fix-meterpreter.patch";
+ url = "https://gitlab.com/kalilinux/packages/armitage/-/raw/042beb7494a10227761ecb3ddabf4019bbb78681/debian/patches/fix-meterpreter.patch";
+ hash = "sha256-p4fs5xFdC2apW0U8x8u9S4p5gq3Eiv+0E4CGccQZYKY=";
+ })
+ ];
+
+ deps = stdenv.mkDerivation {
+ pname = "${pname}-deps";
+ inherit version src patches;
+ nativeBuildInputs = [ gradle_6 perl ];
+ buildPhase = ''
+ export GRADLE_USER_HOME=$(mktemp -d)
+ gradle --no-daemon assemble
+ '';
+ # perl code mavenizes pathes (com.squareup.okio/okio/1.13.0/a9283170b7305c8d92d25aff02a6ab7e45d06cbe/okio-1.13.0.jar -> com/squareup/okio/okio/1.13.0/okio-1.13.0.jar)
+ installPhase = ''
+ find $GRADLE_USER_HOME -type f -regex '.*\.\(jar\|pom\)' \
+ | perl -pe 's#(.*/([^/]+)/([^/]+)/([^/]+)/[0-9a-f]{30,40}/([^/\s]+))$# ($x = $2) =~ tr|\.|/|; "install -Dm444 $1 \$out/$x/$3/$4/$5" #e' \
+ | sh
+ rm -rf $out/tmp
+ '';
+ outputHashAlgo = "sha256";
+ outputHashMode = "recursive";
+ outputHash = "sha256-6o3HlBfmpjpmMeiRydOme6fJc8caq8EBRVf3nJq9vqo=";
+ };
+in
+stdenv.mkDerivation (finalAttrs: {
+ inherit pname version src patches;
+
+ __darwinAllowLocalNetworking = true;
+
+ desktopItems = [
+ (makeDesktopItem {
+ name = "armitage";
+ desktopName = "Armitage";
+ exec = "armitage";
+ icon = "armitage";
+ comment = finalAttrs.meta.description;
+ categories = [ "Network" "Security" ];
+ startupNotify = false;
+ })
+ ];
+
+ nativeBuildInputs = [
+ jdk11
+ gradle_6
+ makeWrapper
+ copyDesktopItems
+ ] ++ lib.optionals stdenv.isDarwin [
+ writeDarwinBundle
+ ];
+
+ buildPhase = ''
+ runHook preBuild
+
+ export GRADLE_USER_HOME=$(mktemp -d)
+ substituteInPlace armitage/build.gradle \
+ --replace 'mavenCentral()' 'mavenLocal(); maven { url uri("${deps}") }'
+ substituteInPlace cortana/build.gradle \
+ --replace 'mavenCentral()' 'mavenLocal(); maven { url uri("${deps}") }'
+ gradle --offline --no-daemon assemble
+
+ runHook postBuild
+ '';
+
+ installPhase = ''
+ runHook preInstall
+
+ JAR="$out/share/armitage/armitage.jar"
+ install -Dm444 build/armitage.jar $JAR
+
+ install -Dm755 dist/unix/armitage $out/bin/armitage
+ substituteInPlace $out/bin/armitage \
+ --replace "armitage.jar" "$JAR"
+ wrapProgram $out/bin/armitage \
+ --prefix PATH : "${lib.makeBinPath [ jdk11 metasploit ]}"
+
+ install -Dm755 dist/unix/teamserver $out/bin/teamserver
+ substituteInPlace $out/bin/teamserver \
+ --replace "armitage.jar" "$JAR"
+ wrapProgram $out/bin/teamserver \
+ --prefix PATH : "${lib.makeBinPath [ jdk11 metasploit ]}"
+
+ install -Dm444 dist/unix/armitage-logo.png $out/share/pixmaps/armitage.png
+ ${lib.optionalString stdenv.isDarwin ''
+ mkdir -p "$out/Applications/Armitage.app/Contents/MacOS"
+ mkdir -p "$out/Applications/Armitage.app/Contents/Resources"
+ cp dist/mac/Armitage.app/Contents/Resources/macIcon.icns $out/Applications/Armitage.app/Contents/Resources
+ write-darwin-bundle $out Armitage armitage macIcon
+ ''}
+
+ runHook postInstall
+ '';
+
+ meta = with lib; {
+ description = "Graphical cyber attack management tool for Metasploit";
+ homepage = "https://github.com/r00t0v3rr1d3/armitage";
+ license = licenses.bsd3;
+ maintainers = with maintainers; [ emilytrau ];
+ platforms = platforms.unix;
+ mainProgram = "armitage";
+ };
+})
diff --git a/pkgs/by-name/do/door-knocker/package.nix b/pkgs/by-name/do/door-knocker/package.nix
new file mode 100644
index 000000000000..30e78a72ddd2
--- /dev/null
+++ b/pkgs/by-name/do/door-knocker/package.nix
@@ -0,0 +1,50 @@
+{ stdenv
+, lib
+, fetchFromGitea
+, blueprint-compiler
+, desktop-file-utils
+, glib
+, gtk4
+, libadwaita
+, meson
+, ninja
+, pkg-config
+, wrapGAppsHook4
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+ pname = "door-knocker";
+ version = "0.4.2";
+
+ src = fetchFromGitea {
+ domain = "codeberg.org";
+ owner = "tytan652";
+ repo = "door-knocker";
+ rev = finalAttrs.version;
+ hash = "sha256-9kCEPo+rlR344uPGhuWxGq6dAPgyCFEQ1XPGkLfp/bA=";
+ };
+
+ nativeBuildInputs = [
+ meson
+ ninja
+ pkg-config
+ desktop-file-utils
+ blueprint-compiler
+ wrapGAppsHook4
+ ];
+
+ buildInputs = [
+ glib
+ gtk4
+ libadwaita
+ ];
+
+ meta = with lib; {
+ description = "Tool to check the availability of portals";
+ homepage = "https://codeberg.org/tytan652/door-knocker";
+ license = licenses.gpl3Plus;
+ maintainers = with maintainers; [ symphorien ];
+ platforms = platforms.linux;
+ mainProgram = "door-knocker";
+ };
+})
diff --git a/pkgs/by-name/dr/drone-scp/package.nix b/pkgs/by-name/dr/drone-scp/package.nix
index 137c0c657884..9e76e33e721a 100644
--- a/pkgs/by-name/dr/drone-scp/package.nix
+++ b/pkgs/by-name/dr/drone-scp/package.nix
@@ -4,16 +4,16 @@
}:
buildGoModule rec {
pname = "drone-scp";
- version = "1.6.12";
+ version = "1.6.13";
src = fetchFromGitHub {
owner = "appleboy";
repo = "drone-scp";
rev = "v${version}";
- hash = "sha256-pdVSb+hOW38LMP6fwAxVy/8SyfwKcMe4SgemPZ1PlSg=";
+ hash = "sha256-xto5QPrrPzGFy9GYUfK8lFUcXxi9gGHHs/84FdSjbYc=";
};
- vendorHash = "sha256-HQeWj5MmVfR6PkL2FEnaptMH+4nSh7T2wfOaZyUZvbM=";
+ vendorHash = "sha256-rVS2ZKeJou/ZfLvNMd6jMRYMYuDXiqGyZSSDX9y3FQo=";
# Needs a specific user...
doCheck = false;
diff --git a/pkgs/by-name/jj/jj/package.nix b/pkgs/by-name/jj/jj/package.nix
new file mode 100644
index 000000000000..c94bb6d2e7e4
--- /dev/null
+++ b/pkgs/by-name/jj/jj/package.nix
@@ -0,0 +1,73 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, nix-update-script
+, testers
+, writeText
+, runCommand
+, jj
+}:
+buildGoModule rec {
+ pname = "jj";
+ version = "1.9.2";
+
+ src = fetchFromGitHub {
+ owner = "tidwall";
+ repo = "jj";
+ rev = "v${version}";
+ hash = "sha256-Yijap5ZghTBe1ahkQgjjxuo++SriJWXgRqrNXIVQ0os=";
+ };
+
+ vendorHash = "sha256-39rA3jMGYhsh1nrGzI1vfHZzZDy4O6ooYWB8af654mM=";
+
+ subPackages = [ "cmd/jj" ];
+
+ CGO_ENABLED = "0";
+
+ ldflags = [
+ "-s"
+ "-w"
+ "-X main.version=${version}"
+ ];
+
+ passthru = {
+ updateScript = nix-update-script { };
+ tests = with testers; {
+ version = testVersion { package = jj; };
+ examples = testEqualContents {
+ assertion = "examples from projects README.md work";
+ actual = runCommand "actual" { nativeBuildInputs = [ jj ]; } ''
+ {
+ echo '{"name":{"first":"Tom","last":"Smith"}}' | jj name.last
+ echo '{"name":{"first":"Tom","last":"Smith"}}' | jj name
+ echo '{"name":{"first":"Tom","last":"Smith"}}' | jj -v Andy name.first
+ echo '{"friends":["Tom","Jane","Carol"]}' | jj -v Andy friends.-1
+ echo '{"age":46,"name":{"first":"Tom","last":"Smith"}}' | jj -D age
+ } > $out
+ '';
+ expected = writeText "expected" ''
+ Smith
+ {"first":"Tom","last":"Smith"}
+ {"name":{"first":"Andy","last":"Smith"}}
+ {"friends":["Tom","Jane","Carol","Andy"]}
+ {"name":{"first":"Tom","last":"Smith"}}
+ '';
+ };
+ };
+ };
+
+ meta = with lib; {
+ description = "JSON Stream Editor (command line utility)";
+ longDescription = ''
+ JJ is a command line utility that provides a fast and simple way to retrieve
+ or update values from JSON documents. It's powered by GJSON and SJSON under the hood.
+ It's fast because it avoids parsing irrelevant sections of json, skipping over values
+ that do not apply, and aborts as soon as the target value has been found or updated.
+ '';
+ homepage = "https://github.com/tidwall/jj";
+ changelog = "https://github.com/tidwall/jj/releases/tag/v${version}";
+ license = licenses.mit;
+ mainProgram = "jj";
+ maintainers = with maintainers; [ katexochen ];
+ };
+}
diff --git a/pkgs/by-name/li/libsignal-ffi/Cargo.lock b/pkgs/by-name/li/libsignal-ffi/Cargo.lock
new file mode 100644
index 000000000000..1aee4e85f3a4
--- /dev/null
+++ b/pkgs/by-name/li/libsignal-ffi/Cargo.lock
@@ -0,0 +1,3829 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "addr2line"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
+dependencies = [
+ "gimli",
+]
+
+[[package]]
+name = "adler"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+[[package]]
+name = "aead"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877"
+dependencies = [
+ "generic-array",
+]
+
+[[package]]
+name = "aead"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0"
+dependencies = [
+ "crypto-common",
+ "generic-array",
+]
+
+[[package]]
+name = "aes"
+version = "0.7.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8"
+dependencies = [
+ "cfg-if",
+ "cipher 0.3.0",
+ "cpufeatures",
+ "opaque-debug",
+]
+
+[[package]]
+name = "aes"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac1f845298e95f983ff1944b728ae08b8cebab80d684f0a832ed0fc74dfa27e2"
+dependencies = [
+ "cfg-if",
+ "cipher 0.4.4",
+ "cpufeatures",
+ "zeroize",
+]
+
+[[package]]
+name = "aes-gcm"
+version = "0.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bc3be92e19a7ef47457b8e6f90707e12b6ac5d20c6f3866584fa3be0787d839f"
+dependencies = [
+ "aead 0.4.3",
+ "aes 0.7.5",
+ "cipher 0.3.0",
+ "ctr 0.7.0",
+ "ghash 0.4.4",
+ "subtle",
+]
+
+[[package]]
+name = "aes-gcm-siv"
+version = "0.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae0784134ba9375416d469ec31e7c5f9fa94405049cf08c5ce5b4698be673e0d"
+dependencies = [
+ "aead 0.5.2",
+ "aes 0.8.3",
+ "cipher 0.4.4",
+ "ctr 0.9.2",
+ "polyval 0.6.1",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "aho-corasick"
+version = "1.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+dependencies = [
+ "memchr",
+]
+
+[[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"
+checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "anes"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
+
+[[package]]
+name = "anstyle"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87"
+
+[[package]]
+name = "anyhow"
+version = "1.0.75"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
+
+[[package]]
+name = "argon2"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "17ba4cac0a46bc1d2912652a751c47f2a9f3a7fe89bcae2275d418f5270402f9"
+dependencies = [
+ "base64ct",
+ "blake2",
+ "cpufeatures",
+ "password-hash",
+ "zeroize",
+]
+
+[[package]]
+name = "arrayref"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545"
+
+[[package]]
+name = "asn1"
+version = "0.15.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae3ecbce89a22627b5e8e6e11d69715617138290289e385cde773b1fe50befdb"
+dependencies = [
+ "asn1_derive",
+]
+
+[[package]]
+name = "asn1_derive"
+version = "0.15.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "861af988fac460ac69a09f41e6217a8fb9178797b76fcc9478444be6a59be19c"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "assert_matches"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9"
+
+[[package]]
+name = "async-trait"
+version = "0.1.74"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "attest"
+version = "0.1.0"
+dependencies = [
+ "asn1",
+ "bitflags 2.4.1",
+ "boring",
+ "chacha20poly1305 0.10.1",
+ "chrono",
+ "ciborium",
+ "displaydoc",
+ "hex",
+ "hex-literal",
+ "lazy_static",
+ "libc",
+ "log",
+ "prost",
+ "prost-build",
+ "rand_core",
+ "serde",
+ "serde_json",
+ "sha2",
+ "snow",
+ "static_assertions",
+ "subtle",
+ "uuid",
+ "variant_count",
+ "x25519-dalek",
+]
+
+[[package]]
+name = "autocfg"
+version = "1.1.0"
+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 = "base64"
+version = "0.21.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
+
+[[package]]
+name = "base64ct"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
+
+[[package]]
+name = "bincode"
+version = "1.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "bindgen"
+version = "0.66.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f2b84e06fc203107bfbad243f4aba2af864eb7db3b1cf46ea0a023b0b433d2a7"
+dependencies = [
+ "bitflags 2.4.1",
+ "cexpr",
+ "clang-sys",
+ "lazy_static",
+ "lazycell",
+ "peeking_take_while",
+ "proc-macro2",
+ "quote",
+ "regex",
+ "rustc-hash",
+ "shlex",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "bit-set"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
+dependencies = [
+ "bit-vec",
+]
+
+[[package]]
+name = "bit-vec"
+version = "0.6.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
+
+[[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.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
+
+[[package]]
+name = "bitstream-io"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "02bef9e74b5908bed0360844109a55b62b07cc973274c11d3a577bda8cc1cf60"
+
+[[package]]
+name = "blake2"
+version = "0.10.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe"
+dependencies = [
+ "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 = "block-padding"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93"
+dependencies = [
+ "generic-array",
+]
+
+[[package]]
+name = "boring"
+version = "3.1.0"
+source = "git+https://github.com/signalapp/boring?branch=libsignal#8245063ae6eb97d909982b89fad45bb7f0a2a1a0"
+dependencies = [
+ "bitflags 2.4.1",
+ "boring-sys",
+ "foreign-types",
+ "libc",
+ "once_cell",
+]
+
+[[package]]
+name = "boring-sys"
+version = "3.1.0"
+source = "git+https://github.com/signalapp/boring?branch=libsignal#8245063ae6eb97d909982b89fad45bb7f0a2a1a0"
+dependencies = [
+ "bindgen",
+ "cmake",
+ "fs_extra",
+ "fslock",
+]
+
+[[package]]
+name = "bumpalo"
+version = "3.14.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
+
+[[package]]
+name = "bytemuck"
+version = "1.14.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6"
+
+[[package]]
+name = "byteorder"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
+
+[[package]]
+name = "bytes"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
+
+[[package]]
+name = "cast"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
+
+[[package]]
+name = "cbc"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6"
+dependencies = [
+ "cipher 0.4.4",
+]
+
+[[package]]
+name = "cc"
+version = "1.0.83"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
+dependencies = [
+ "jobserver",
+ "libc",
+]
+
+[[package]]
+name = "cesu8"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
+
+[[package]]
+name = "cexpr"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
+dependencies = [
+ "nom",
+]
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "chacha20"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c80e5460aa66fe3b91d40bcbdab953a597b60053e34d684ac6903f863b680a6"
+dependencies = [
+ "cfg-if",
+ "cipher 0.3.0",
+ "cpufeatures",
+ "zeroize",
+]
+
+[[package]]
+name = "chacha20"
+version = "0.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818"
+dependencies = [
+ "cfg-if",
+ "cipher 0.4.4",
+ "cpufeatures",
+]
+
+[[package]]
+name = "chacha20poly1305"
+version = "0.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a18446b09be63d457bbec447509e85f662f32952b035ce892290396bc0b0cff5"
+dependencies = [
+ "aead 0.4.3",
+ "chacha20 0.8.2",
+ "cipher 0.3.0",
+ "poly1305 0.7.2",
+ "zeroize",
+]
+
+[[package]]
+name = "chacha20poly1305"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "10cd79432192d1c0f4e1a0fef9527696cc039165d729fb41b3f4f4f354c2dc35"
+dependencies = [
+ "aead 0.5.2",
+ "chacha20 0.9.1",
+ "cipher 0.4.4",
+ "poly1305 0.8.0",
+ "zeroize",
+]
+
+[[package]]
+name = "chrono"
+version = "0.4.31"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38"
+dependencies = [
+ "android-tzdata",
+ "iana-time-zone",
+ "js-sys",
+ "num-traits",
+ "serde",
+ "wasm-bindgen",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "ciborium"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "effd91f6c78e5a4ace8a5d3c0b6bfaec9e2baaef55f3efc00e45fb2e477ee926"
+dependencies = [
+ "ciborium-io",
+ "ciborium-ll",
+ "serde",
+]
+
+[[package]]
+name = "ciborium-io"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cdf919175532b369853f5d5e20b26b43112613fd6fe7aee757e35f7a44642656"
+
+[[package]]
+name = "ciborium-ll"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "defaa24ecc093c77630e6c15e17c51f5e187bf35ee514f4e2d67baaa96dae22b"
+dependencies = [
+ "ciborium-io",
+ "half",
+]
+
+[[package]]
+name = "cipher"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7"
+dependencies = [
+ "generic-array",
+]
+
+[[package]]
+name = "cipher"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
+dependencies = [
+ "crypto-common",
+ "inout",
+ "zeroize",
+]
+
+[[package]]
+name = "clang-sys"
+version = "1.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f"
+dependencies = [
+ "glob",
+ "libc",
+ "libloading 0.7.4",
+]
+
+[[package]]
+name = "clap"
+version = "4.4.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac495e00dcec98c83465d5ad66c5c4fabd652fd6686e7c6269b117e729a6f17b"
+dependencies = [
+ "clap_builder",
+]
+
+[[package]]
+name = "clap_builder"
+version = "4.4.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c77ed9a32a62e6ca27175d00d29d05ca32e396ea1eb5fb01d8256b669cec7663"
+dependencies = [
+ "anstyle",
+ "clap_lex",
+]
+
+[[package]]
+name = "clap_lex"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1"
+
+[[package]]
+name = "cmake"
+version = "0.1.48"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e8ad8cef104ac57b68b89df3208164d228503abbdce70f6880ffa3d970e7443a"
+dependencies = [
+ "cc",
+]
+
+[[package]]
+name = "combine"
+version = "4.6.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4"
+dependencies = [
+ "bytes",
+ "memchr",
+]
+
+[[package]]
+name = "convert_case"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
+
+[[package]]
+name = "core-foundation"
+version = "0.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+dependencies = [
+ "core-foundation-sys",
+ "libc",
+]
+
+[[package]]
+name = "core-foundation-sys"
+version = "0.8.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
+
+[[package]]
+name = "cpufeatures"
+version = "0.2.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "criterion"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f"
+dependencies = [
+ "anes",
+ "cast",
+ "ciborium",
+ "clap",
+ "criterion-plot",
+ "is-terminal",
+ "itertools 0.10.5",
+ "num-traits",
+ "once_cell",
+ "oorandom",
+ "plotters",
+ "rayon",
+ "regex",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "tinytemplate",
+ "walkdir",
+]
+
+[[package]]
+name = "criterion-plot"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
+dependencies = [
+ "cast",
+ "itertools 0.10.5",
+]
+
+[[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",
+ "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",
+ "rand_core",
+ "typenum",
+]
+
+[[package]]
+name = "ctr"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a232f92a03f37dd7d7dd2adc67166c77e9cd88de5b019b9a9eecfaeaf7bfd481"
+dependencies = [
+ "cipher 0.3.0",
+]
+
+[[package]]
+name = "ctr"
+version = "0.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835"
+dependencies = [
+ "cipher 0.4.4",
+]
+
+[[package]]
+name = "curve25519-dalek"
+version = "4.1.1"
+source = "git+https://github.com/signalapp/curve25519-dalek?tag=signal-curve25519-4.1.1#a12ab4e58455bb3dc7cd73a0f9f3443507b2854b"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "curve25519-dalek-derive",
+ "digest",
+ "fiat-crypto",
+ "platforms",
+ "rand_core",
+ "rustc_version",
+ "serde",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "curve25519-dalek-derive"
+version = "0.1.0"
+source = "git+https://github.com/signalapp/curve25519-dalek?tag=signal-curve25519-4.1.1#a12ab4e58455bb3dc7cd73a0f9f3443507b2854b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "darling"
+version = "0.14.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850"
+dependencies = [
+ "darling_core",
+ "darling_macro",
+]
+
+[[package]]
+name = "darling_core"
+version = "0.14.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0"
+dependencies = [
+ "fnv",
+ "ident_case",
+ "proc-macro2",
+ "quote",
+ "strsim",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "darling_macro"
+version = "0.14.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e"
+dependencies = [
+ "darling_core",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "data-encoding"
+version = "2.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308"
+
+[[package]]
+name = "derive-where"
+version = "1.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "146398d62142a0f35248a608f17edf0dde57338354966d6e41d0eb2d16980ccb"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "derive_builder"
+version = "0.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8"
+dependencies = [
+ "derive_builder_macro",
+]
+
+[[package]]
+name = "derive_builder_core"
+version = "0.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f"
+dependencies = [
+ "darling",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "derive_builder_macro"
+version = "0.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e"
+dependencies = [
+ "derive_builder_core",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "derive_more"
+version = "0.99.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
+dependencies = [
+ "convert_case",
+ "proc-macro2",
+ "quote",
+ "rustc_version",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "device-transfer"
+version = "0.1.0"
+dependencies = [
+ "boring",
+ "hex",
+ "libc",
+]
+
+[[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 = "displaydoc"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "downcast-rs"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
+
+[[package]]
+name = "dunce"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b"
+
+[[package]]
+name = "dyn-clonable"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4e9232f0e607a262ceb9bd5141a3dfb3e4db6994b31989bbfd845878cba59fd4"
+dependencies = [
+ "dyn-clonable-impl",
+ "dyn-clone",
+]
+
+[[package]]
+name = "dyn-clonable-impl"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "558e40ea573c374cf53507fd240b7ee2f5477df7cfebdb97323ec61c719399c5"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "dyn-clone"
+version = "1.0.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "23d2f3407d9a573d666de4b5bdf10569d73ca9478087346697dcbae6244bfbcd"
+
+[[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.33"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "env_logger"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0"
+dependencies = [
+ "humantime",
+ "is-terminal",
+ "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.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860"
+dependencies = [
+ "libc",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "fastrand"
+version = "2.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
+
+[[package]]
+name = "fiat-crypto"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "27573eac26f4dd11e2b1916c3fe1baa56407c83c71a773a8ba17ec0bca03b6b7"
+
+[[package]]
+name = "fixedbitset"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
+
+[[package]]
+name = "fnv"
+version = "1.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+
+[[package]]
+name = "foreign-types"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
+dependencies = [
+ "foreign-types-macros",
+ "foreign-types-shared",
+]
+
+[[package]]
+name = "foreign-types-macros"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "foreign-types-shared"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
+
+[[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 = "fs_extra"
+version = "1.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c"
+
+[[package]]
+name = "fslock"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "04412b8935272e3a9bae6f48c7bfff74c2911f60525404edfdd28e49884c3bfb"
+dependencies = [
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "futures-channel"
+version = "0.3.29"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb"
+dependencies = [
+ "futures-core",
+ "futures-sink",
+]
+
+[[package]]
+name = "futures-core"
+version = "0.3.29"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c"
+
+[[package]]
+name = "futures-io"
+version = "0.3.29"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa"
+
+[[package]]
+name = "futures-macro"
+version = "0.3.29"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "futures-sink"
+version = "0.3.29"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817"
+
+[[package]]
+name = "futures-task"
+version = "0.3.29"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2"
+
+[[package]]
+name = "futures-util"
+version = "0.3.29"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104"
+dependencies = [
+ "futures-core",
+ "futures-io",
+ "futures-macro",
+ "futures-sink",
+ "futures-task",
+ "memchr",
+ "pin-project-lite",
+ "pin-utils",
+ "slab",
+]
+
+[[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 = "ghash"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1583cc1656d7839fd3732b80cf4f38850336cdb9b8ded1cd399ca62958de3c99"
+dependencies = [
+ "opaque-debug",
+ "polyval 0.5.3",
+]
+
+[[package]]
+name = "ghash"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d930750de5717d2dd0b8c0d42c076c0e884c81a73e6cab859bbd2339c71e3e40"
+dependencies = [
+ "opaque-debug",
+ "polyval 0.6.1",
+ "zeroize",
+]
+
+[[package]]
+name = "gimli"
+version = "0.28.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0"
+
+[[package]]
+name = "glob"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
+
+[[package]]
+name = "h2"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833"
+dependencies = [
+ "bytes",
+ "fnv",
+ "futures-core",
+ "futures-sink",
+ "futures-util",
+ "http",
+ "indexmap 1.9.3",
+ "slab",
+ "tokio",
+ "tokio-util",
+ "tracing",
+]
+
+[[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.14.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156"
+
+[[package]]
+name = "headers"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270"
+dependencies = [
+ "base64",
+ "bytes",
+ "headers-core",
+ "http",
+ "httpdate",
+ "mime",
+ "sha1",
+]
+
+[[package]]
+name = "headers-core"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429"
+dependencies = [
+ "http",
+]
+
+[[package]]
+name = "heck"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
+dependencies = [
+ "unicode-segmentation",
+]
+
+[[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.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7"
+
+[[package]]
+name = "hex"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "hex-literal"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46"
+
+[[package]]
+name = "hkdf"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "791a029f6b9fc27657f6f188ec6e5e43f6911f6f878e0dc5501396e09809d437"
+dependencies = [
+ "hmac",
+]
+
+[[package]]
+name = "hmac"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
+dependencies = [
+ "digest",
+]
+
+[[package]]
+name = "home"
+version = "0.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb"
+dependencies = [
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "http"
+version = "0.2.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482"
+dependencies = [
+ "bytes",
+ "fnv",
+ "itoa",
+]
+
+[[package]]
+name = "http-body"
+version = "0.4.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"
+dependencies = [
+ "bytes",
+ "http",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "http-body"
+version = "1.0.0-rc.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "951dfc2e32ac02d67c90c0d65bd27009a635dc9b381a2cc7d284ab01e3a0150d"
+dependencies = [
+ "bytes",
+ "http",
+]
+
+[[package]]
+name = "http-body-util"
+version = "0.1.0-rc.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "08ef12f041acdd397010e5fb6433270c147d3b8b2d0a840cd7fff8e531dca5c8"
+dependencies = [
+ "bytes",
+ "futures-util",
+ "http",
+ "http-body 1.0.0-rc.2",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "httparse"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
+
+[[package]]
+name = "httpdate"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
+
+[[package]]
+name = "humantime"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
+
+[[package]]
+name = "hyper"
+version = "0.14.27"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-core",
+ "futures-util",
+ "h2",
+ "http",
+ "http-body 0.4.5",
+ "httparse",
+ "httpdate",
+ "itoa",
+ "pin-project-lite",
+ "socket2 0.4.10",
+ "tokio",
+ "tower-service",
+ "tracing",
+ "want",
+]
+
+[[package]]
+name = "hyper"
+version = "1.0.0-rc.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d280a71f348bcc670fc55b02b63c53a04ac0bf2daff2980795aeaf53edae10e6"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "h2",
+ "http",
+ "http-body 1.0.0-rc.2",
+ "httparse",
+ "httpdate",
+ "itoa",
+ "pin-project-lite",
+ "tokio",
+ "tracing",
+ "want",
+]
+
+[[package]]
+name = "iana-time-zone"
+version = "0.1.58"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20"
+dependencies = [
+ "android_system_properties",
+ "core-foundation-sys",
+ "iana-time-zone-haiku",
+ "js-sys",
+ "wasm-bindgen",
+ "windows-core",
+]
+
+[[package]]
+name = "iana-time-zone-haiku"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
+dependencies = [
+ "cc",
+]
+
+[[package]]
+name = "ident_case"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
+
+[[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",
+]
+
+[[package]]
+name = "indexmap"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
+dependencies = [
+ "equivalent",
+ "hashbrown 0.14.2",
+]
+
+[[package]]
+name = "inout"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5"
+dependencies = [
+ "block-padding",
+ "generic-array",
+]
+
+[[package]]
+name = "is-terminal"
+version = "0.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b"
+dependencies = [
+ "hermit-abi",
+ "rustix",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "itertools"
+version = "0.10.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
+dependencies = [
+ "either",
+]
+
+[[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 = "jni"
+version = "0.21.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97"
+dependencies = [
+ "cesu8",
+ "cfg-if",
+ "combine",
+ "jni-sys",
+ "log",
+ "thiserror",
+ "walkdir",
+ "windows-sys 0.45.0",
+]
+
+[[package]]
+name = "jni-sys"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
+
+[[package]]
+name = "jobserver"
+version = "0.1.27"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "js-sys"
+version = "0.3.65"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8"
+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 = "lazycell"
+version = "1.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
+
+[[package]]
+name = "libc"
+version = "0.2.149"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b"
+
+[[package]]
+name = "libloading"
+version = "0.6.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "351a32417a12d5f7e82c368a66781e307834dae04c6ce0cd4456d52989229883"
+dependencies = [
+ "cfg-if",
+ "winapi",
+]
+
+[[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 = "libm"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
+
+[[package]]
+name = "libsignal-bridge"
+version = "0.1.0"
+dependencies = [
+ "aes-gcm-siv",
+ "async-trait",
+ "attest",
+ "bincode",
+ "bytemuck",
+ "device-transfer",
+ "futures-util",
+ "hkdf",
+ "hmac",
+ "jni",
+ "libc",
+ "libsignal-bridge-macros",
+ "libsignal-net",
+ "libsignal-protocol",
+ "linkme",
+ "log",
+ "neon",
+ "nonzero_ext",
+ "num_enum",
+ "partial-default",
+ "paste",
+ "rand",
+ "scopeguard",
+ "serde",
+ "serde_derive",
+ "sha2",
+ "signal-crypto",
+ "signal-media",
+ "signal-neon-futures",
+ "signal-pin",
+ "static_assertions",
+ "subtle",
+ "tokio",
+ "usernames",
+ "uuid",
+ "zkgroup",
+]
+
+[[package]]
+name = "libsignal-bridge-macros"
+version = "0.1.0"
+dependencies = [
+ "heck 0.3.3",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+ "syn-mid",
+]
+
+[[package]]
+name = "libsignal-ffi"
+version = "0.36.1"
+dependencies = [
+ "async-trait",
+ "attest",
+ "cpufeatures",
+ "device-transfer",
+ "futures-util",
+ "libc",
+ "libsignal-bridge",
+ "libsignal-protocol",
+ "log",
+ "log-panics",
+ "rand",
+ "signal-crypto",
+ "signal-media",
+ "signal-pin",
+ "usernames",
+ "zkgroup",
+]
+
+[[package]]
+name = "libsignal-jni"
+version = "0.36.1"
+dependencies = [
+ "async-trait",
+ "cfg-if",
+ "cpufeatures",
+ "jni",
+ "libsignal-bridge",
+ "libsignal-protocol",
+ "log",
+ "log-panics",
+ "rand",
+ "signal-crypto",
+]
+
+[[package]]
+name = "libsignal-net"
+version = "0.1.0"
+dependencies = [
+ "assert_matches",
+ "async-trait",
+ "attest",
+ "base64",
+ "boring",
+ "bytes",
+ "derive-where",
+ "displaydoc",
+ "env_logger",
+ "futures-util",
+ "hex",
+ "hex-literal",
+ "http",
+ "http-body-util",
+ "hyper 1.0.0-rc.4",
+ "lazy_static",
+ "libsignal-protocol",
+ "log",
+ "pin-project-lite",
+ "prost",
+ "prost-build",
+ "rand",
+ "rustls-native-certs",
+ "serde",
+ "serde_json",
+ "snow",
+ "thiserror",
+ "tokio",
+ "tokio-boring",
+ "tokio-stream",
+ "tokio-tungstenite 0.19.0",
+ "tokio-util",
+ "tungstenite 0.19.0",
+ "url",
+ "uuid",
+ "warp",
+]
+
+[[package]]
+name = "libsignal-node"
+version = "0.36.1"
+dependencies = [
+ "async-trait",
+ "cmake",
+ "libsignal-bridge",
+ "libsignal-protocol",
+ "log",
+ "log-panics",
+ "neon",
+ "rand",
+ "signal-neon-futures",
+]
+
+[[package]]
+name = "libsignal-protocol"
+version = "0.1.0"
+dependencies = [
+ "aes 0.8.3",
+ "aes-gcm-siv",
+ "arrayref",
+ "async-trait",
+ "criterion",
+ "ctr 0.9.2",
+ "curve25519-dalek",
+ "displaydoc",
+ "env_logger",
+ "futures-util",
+ "hex",
+ "hex-literal",
+ "hkdf",
+ "hmac",
+ "indexmap 1.9.3",
+ "itertools 0.10.5",
+ "log",
+ "num_enum",
+ "pqcrypto-kyber 0.7.6",
+ "pqcrypto-kyber 0.8.0",
+ "pqcrypto-traits",
+ "proptest",
+ "prost",
+ "prost-build",
+ "rand",
+ "sha2",
+ "signal-crypto",
+ "static_assertions",
+ "subtle",
+ "thiserror",
+ "uuid",
+ "x25519-dalek",
+]
+
+[[package]]
+name = "libsignal-svr3"
+version = "0.1.0"
+dependencies = [
+ "attest",
+ "bytemuck",
+ "criterion",
+ "curve25519-dalek",
+ "displaydoc",
+ "hex",
+ "hex-literal",
+ "hkdf",
+ "libsignal-net",
+ "rand",
+ "rand_core",
+ "sha2",
+ "subtle",
+]
+
+[[package]]
+name = "linkme"
+version = "0.3.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "91ed2ee9464ff9707af8e9ad834cffa4802f072caad90639c583dd3c62e6e608"
+dependencies = [
+ "linkme-impl",
+]
+
+[[package]]
+name = "linkme-impl"
+version = "0.3.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba125974b109d512fccbc6c0244e7580143e460895dfd6ea7f8bbb692fd94396"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "linux-raw-sys"
+version = "0.4.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f"
+
+[[package]]
+name = "lock_api"
+version = "0.4.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+dependencies = [
+ "autocfg",
+ "scopeguard",
+]
+
+[[package]]
+name = "log"
+version = "0.4.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+
+[[package]]
+name = "log-panics"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "68f9dd8546191c1850ecf67d22f5ff00a935b890d0e84713159a55495cc2ac5f"
+dependencies = [
+ "backtrace",
+ "log",
+]
+
+[[package]]
+name = "mediasan-common"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a194e6b0d938337246552b8c17aba454764de70b097fa80eba16aa9aaa04dc33"
+dependencies = [
+ "bytes",
+ "derive_more",
+ "futures-util",
+ "thiserror",
+]
+
+[[package]]
+name = "memchr"
+version = "2.6.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
+
+[[package]]
+name = "memoffset"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "mime"
+version = "0.3.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
+
+[[package]]
+name = "mime_guess"
+version = "2.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef"
+dependencies = [
+ "mime",
+ "unicase",
+]
+
+[[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.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+dependencies = [
+ "adler",
+]
+
+[[package]]
+name = "mio"
+version = "0.8.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0"
+dependencies = [
+ "libc",
+ "wasi",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "mp4san"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c69d26d39cf1674e30fdcd845780f80059da129cfaab035970d6b493e89c557"
+dependencies = [
+ "bytes",
+ "derive-where",
+ "derive_builder",
+ "derive_more",
+ "downcast-rs",
+ "dyn-clonable",
+ "futures-util",
+ "log",
+ "mediasan-common",
+ "mp4san-derive",
+ "paste",
+ "thiserror",
+]
+
+[[package]]
+name = "mp4san-derive"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b8c7426e88e3f1cf832fd56172e85ffab615897561a43a904d71bc287bcaef7a"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+ "uuid",
+]
+
+[[package]]
+name = "multer"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "01acbdc23469fd8fe07ab135923371d5f5a422fbf9c522158677c8eb15bc51c2"
+dependencies = [
+ "bytes",
+ "encoding_rs",
+ "futures-util",
+ "http",
+ "httparse",
+ "log",
+ "memchr",
+ "mime",
+ "spin",
+ "version_check",
+]
+
+[[package]]
+name = "multimap"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a"
+
+[[package]]
+name = "neon"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "28e15415261d880aed48122e917a45e87bb82cf0260bb6db48bbab44b7464373"
+dependencies = [
+ "neon-build",
+ "neon-macros",
+ "neon-runtime",
+ "semver 0.9.0",
+ "smallvec",
+]
+
+[[package]]
+name = "neon-build"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8bac98a702e71804af3dacfde41edde4a16076a7bbe889ae61e56e18c5b1c811"
+
+[[package]]
+name = "neon-macros"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b7288eac8b54af7913c60e0eb0e2a7683020dffa342ab3fd15e28f035ba897cf"
+dependencies = [
+ "quote",
+ "syn 1.0.109",
+ "syn-mid",
+]
+
+[[package]]
+name = "neon-runtime"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4676720fa8bb32c64c3d9f49c47a47289239ec46b4bdb66d0913cc512cb0daca"
+dependencies = [
+ "cfg-if",
+ "libloading 0.6.7",
+ "smallvec",
+]
+
+[[package]]
+name = "nom"
+version = "7.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
+dependencies = [
+ "memchr",
+ "minimal-lexical",
+]
+
+[[package]]
+name = "nonzero_ext"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38bf9645c8b145698bb0b18a4637dcacbc421ea49bef2317e4fd8065a387cf21"
+
+[[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.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
+dependencies = [
+ "autocfg",
+ "libm",
+]
+
+[[package]]
+name = "num_cpus"
+version = "1.16.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
+dependencies = [
+ "hermit-abi",
+ "libc",
+]
+
+[[package]]
+name = "num_enum"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a015b430d3c108a207fd776d2e2196aaf8b1cf8cf93253e3a097ff3085076a1"
+dependencies = [
+ "num_enum_derive",
+]
+
+[[package]]
+name = "num_enum_derive"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6"
+dependencies = [
+ "proc-macro-crate",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "object"
+version = "0.32.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0"
+dependencies = [
+ "memchr",
+]
+
+[[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 = "opaque-debug"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
+
+[[package]]
+name = "openssl-probe"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
+
+[[package]]
+name = "parking_lot"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+dependencies = [
+ "lock_api",
+ "parking_lot_core",
+]
+
+[[package]]
+name = "parking_lot_core"
+version = "0.9.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "redox_syscall",
+ "smallvec",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "partial-default"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "124dc3c21ffb6fb3a0562d129929a8a54998766ef7adc1ba09ddc467d092c14b"
+dependencies = [
+ "partial-default-derive",
+]
+
+[[package]]
+name = "partial-default-derive"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7459127d7a18cb202d418e4b7df1103ffd6d82a106e9b2091c250624c2ace70d"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "password-hash"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166"
+dependencies = [
+ "base64ct",
+ "rand_core",
+ "subtle",
+]
+
+[[package]]
+name = "paste"
+version = "1.0.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
+
+[[package]]
+name = "peeking_take_while"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
+
+[[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.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9"
+dependencies = [
+ "fixedbitset",
+ "indexmap 2.1.0",
+]
+
+[[package]]
+name = "pin-project"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422"
+dependencies = [
+ "pin-project-internal",
+]
+
+[[package]]
+name = "pin-project-internal"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "pin-project-lite"
+version = "0.2.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
+
+[[package]]
+name = "pin-utils"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
+[[package]]
+name = "platforms"
+version = "3.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "14e6ab3f592e6fb464fc9712d8d6e6912de6473954635fd76a589d832cffcbb0"
+
+[[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 = "poksho"
+version = "0.7.0"
+dependencies = [
+ "curve25519-dalek",
+ "hex",
+ "hmac",
+ "sha2",
+ "subtle",
+]
+
+[[package]]
+name = "poly1305"
+version = "0.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "048aeb476be11a4b6ca432ca569e375810de9294ae78f4774e78ea98a9246ede"
+dependencies = [
+ "cpufeatures",
+ "opaque-debug",
+ "universal-hash 0.4.0",
+]
+
+[[package]]
+name = "poly1305"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf"
+dependencies = [
+ "cpufeatures",
+ "opaque-debug",
+ "universal-hash 0.5.1",
+]
+
+[[package]]
+name = "polyval"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8419d2b623c7c0896ff2d5d96e2cb4ede590fed28fcc34934f4c33c036e620a1"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "opaque-debug",
+ "universal-hash 0.4.0",
+]
+
+[[package]]
+name = "polyval"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d52cff9d1d4dee5fe6d03729099f4a310a41179e0a10dbf542039873f2e826fb"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "opaque-debug",
+ "universal-hash 0.5.1",
+]
+
+[[package]]
+name = "ppv-lite86"
+version = "0.2.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
+
+[[package]]
+name = "pqcrypto-internals"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d9d34bec6abe2283e6de7748b68b292d1ffa2203397e3e71380ff8418a49fb46"
+dependencies = [
+ "cc",
+ "dunce",
+ "getrandom",
+ "libc",
+]
+
+[[package]]
+name = "pqcrypto-kyber"
+version = "0.7.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fe9d9695c19e525d5366c913562a331fbeef9a2ad801d9a9ded61a0e4c2fe0fb"
+dependencies = [
+ "cc",
+ "glob",
+ "libc",
+ "pqcrypto-internals",
+ "pqcrypto-traits",
+]
+
+[[package]]
+name = "pqcrypto-kyber"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2bc5d857fb0a0a0695dbe379f449a185bf73d0173cdcaffa86c015b5d1b11490"
+dependencies = [
+ "cc",
+ "glob",
+ "libc",
+ "pqcrypto-internals",
+ "pqcrypto-traits",
+]
+
+[[package]]
+name = "pqcrypto-traits"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "94e851c7654eed9e68d7d27164c454961a616cf8c203d500607ef22c737b51bb"
+
+[[package]]
+name = "prettyplease"
+version = "0.2.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d"
+dependencies = [
+ "proc-macro2",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "proc-macro-crate"
+version = "1.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"
+dependencies = [
+ "once_cell",
+ "toml_edit",
+]
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.69"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
+dependencies = [
+ "unicode-ident",
+]
+
+[[package]]
+name = "proptest"
+version = "1.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7c003ac8c77cb07bb74f5f198bce836a689bcd5a42574612bf14d17bfd08c20e"
+dependencies = [
+ "bit-set",
+ "bit-vec",
+ "bitflags 2.4.1",
+ "lazy_static",
+ "num-traits",
+ "rand",
+ "rand_chacha",
+ "rand_xorshift",
+ "regex-syntax 0.7.5",
+ "rusty-fork",
+ "tempfile",
+ "unarray",
+]
+
+[[package]]
+name = "prost"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f4fdd22f3b9c31b53c060df4a0613a1c7f062d4115a2b984dd15b1858f7e340d"
+dependencies = [
+ "bytes",
+ "prost-derive",
+]
+
+[[package]]
+name = "prost-build"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8bdf592881d821b83d471f8af290226c8d51402259e9bb5be7f9f8bdebbb11ac"
+dependencies = [
+ "bytes",
+ "heck 0.4.1",
+ "itertools 0.11.0",
+ "log",
+ "multimap",
+ "once_cell",
+ "petgraph",
+ "prettyplease",
+ "prost",
+ "prost-types",
+ "regex",
+ "syn 2.0.38",
+ "tempfile",
+ "which",
+]
+
+[[package]]
+name = "prost-derive"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "265baba7fabd416cf5078179f7d2cbeca4ce7a9041111900675ea7c4cb8a4c32"
+dependencies = [
+ "anyhow",
+ "itertools 0.11.0",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "prost-types"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e081b29f63d83a4bc75cfc9f3fe424f9156cf92d8a4f0c9407cce9a1b67327cf"
+dependencies = [
+ "prost",
+]
+
+[[package]]
+name = "quick-error"
+version = "1.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
+
+[[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 = "rand_xorshift"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f"
+dependencies = [
+ "rand_core",
+]
+
+[[package]]
+name = "rayon"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1"
+dependencies = [
+ "either",
+ "rayon-core",
+]
+
+[[package]]
+name = "rayon-core"
+version = "1.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed"
+dependencies = [
+ "crossbeam-deque",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "redox_syscall"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
+dependencies = [
+ "bitflags 1.3.2",
+]
+
+[[package]]
+name = "regex"
+version = "1.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-automata",
+ "regex-syntax 0.8.2",
+]
+
+[[package]]
+name = "regex-automata"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax 0.8.2",
+]
+
+[[package]]
+name = "regex-syntax"
+version = "0.7.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da"
+
+[[package]]
+name = "regex-syntax"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
+
+[[package]]
+name = "ring"
+version = "0.17.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b"
+dependencies = [
+ "cc",
+ "getrandom",
+ "libc",
+ "spin",
+ "untrusted",
+ "windows-sys 0.48.0",
+]
+
+[[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 = "rustc_version"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
+dependencies = [
+ "semver 1.0.20",
+]
+
+[[package]]
+name = "rustix"
+version = "0.38.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3"
+dependencies = [
+ "bitflags 2.4.1",
+ "errno",
+ "libc",
+ "linux-raw-sys",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "rustls"
+version = "0.21.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "446e14c5cda4f3f30fe71863c34ec70f5ac79d6087097ad0bb433e1be5edf04c"
+dependencies = [
+ "log",
+ "ring",
+ "rustls-webpki",
+ "sct",
+]
+
+[[package]]
+name = "rustls-native-certs"
+version = "0.6.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00"
+dependencies = [
+ "openssl-probe",
+ "rustls-pemfile",
+ "schannel",
+ "security-framework",
+]
+
+[[package]]
+name = "rustls-pemfile"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2"
+dependencies = [
+ "base64",
+]
+
+[[package]]
+name = "rustls-webpki"
+version = "0.101.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
+dependencies = [
+ "ring",
+ "untrusted",
+]
+
+[[package]]
+name = "rusty-fork"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f"
+dependencies = [
+ "fnv",
+ "quick-error",
+ "tempfile",
+ "wait-timeout",
+]
+
+[[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 = "schannel"
+version = "0.1.22"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88"
+dependencies = [
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "scoped-tls"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
+
+[[package]]
+name = "scopeguard"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
+
+[[package]]
+name = "sct"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414"
+dependencies = [
+ "ring",
+ "untrusted",
+]
+
+[[package]]
+name = "security-framework"
+version = "2.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
+dependencies = [
+ "bitflags 1.3.2",
+ "core-foundation",
+ "core-foundation-sys",
+ "libc",
+ "security-framework-sys",
+]
+
+[[package]]
+name = "security-framework-sys"
+version = "2.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
+dependencies = [
+ "core-foundation-sys",
+ "libc",
+]
+
+[[package]]
+name = "semver"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
+dependencies = [
+ "semver-parser",
+]
+
+[[package]]
+name = "semver"
+version = "1.0.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090"
+
+[[package]]
+name = "semver-parser"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
+
+[[package]]
+name = "serde"
+version = "1.0.190"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7"
+dependencies = [
+ "serde_derive",
+]
+
+[[package]]
+name = "serde_derive"
+version = "1.0.190"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "67c5609f394e5c2bd7fc51efda478004ea80ef42fee983d5c67a65e34f32c0e3"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "serde_json"
+version = "1.0.108"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
+dependencies = [
+ "itoa",
+ "ryu",
+ "serde",
+]
+
+[[package]]
+name = "serde_urlencoded"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
+dependencies = [
+ "form_urlencoded",
+ "itoa",
+ "ryu",
+ "serde",
+]
+
+[[package]]
+name = "sha1"
+version = "0.10.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "digest",
+]
+
+[[package]]
+name = "sha2"
+version = "0.10.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "digest",
+]
+
+[[package]]
+name = "shlex"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
+
+[[package]]
+name = "signal-crypto"
+version = "0.1.0"
+dependencies = [
+ "aes 0.8.3",
+ "cbc",
+ "criterion",
+ "ctr 0.9.2",
+ "displaydoc",
+ "ghash 0.5.0",
+ "hex",
+ "hex-literal",
+ "hmac",
+ "rand",
+ "serde",
+ "serde_json",
+ "sha1",
+ "sha2",
+ "subtle",
+ "thiserror",
+]
+
+[[package]]
+name = "signal-hook-registry"
+version = "1.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "signal-media"
+version = "0.1.0"
+dependencies = [
+ "futures-util",
+ "mediasan-common",
+ "mp4san",
+ "thiserror",
+ "webpsan",
+]
+
+[[package]]
+name = "signal-neon-futures"
+version = "0.1.0"
+dependencies = [
+ "futures-util",
+ "neon",
+ "signal-neon-futures-tests",
+]
+
+[[package]]
+name = "signal-neon-futures-tests"
+version = "0.1.0"
+dependencies = [
+ "futures-util",
+ "neon",
+ "signal-neon-futures",
+]
+
+[[package]]
+name = "signal-pin"
+version = "0.1.0"
+dependencies = [
+ "argon2",
+ "criterion",
+ "displaydoc",
+ "hex-literal",
+ "hkdf",
+ "hmac",
+ "rand_core",
+ "sha2",
+ "static_assertions",
+]
+
+[[package]]
+name = "slab"
+version = "0.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "smallvec"
+version = "1.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a"
+
+[[package]]
+name = "snow"
+version = "0.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c9d1425eb528a21de2755c75af4c9b5d57f50a0d4c3b7f1828a4cd03f8ba155"
+dependencies = [
+ "aes-gcm",
+ "blake2",
+ "chacha20poly1305 0.9.1",
+ "curve25519-dalek",
+ "rand_core",
+ "rustc_version",
+ "sha2",
+ "subtle",
+]
+
+[[package]]
+name = "socket2"
+version = "0.4.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d"
+dependencies = [
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "socket2"
+version = "0.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9"
+dependencies = [
+ "libc",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "spin"
+version = "0.9.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
+
+[[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 = "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.38"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "syn-mid"
+version = "0.5.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fea305d57546cc8cd04feb14b62ec84bf17f50e3f7b12560d7bfa9265f39d9ed"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "tempfile"
+version = "3.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
+dependencies = [
+ "cfg-if",
+ "fastrand",
+ "redox_syscall",
+ "rustix",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "termcolor"
+version = "1.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64"
+dependencies = [
+ "winapi-util",
+]
+
+[[package]]
+name = "thiserror"
+version = "1.0.50"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
+dependencies = [
+ "thiserror-impl",
+]
+
+[[package]]
+name = "thiserror-impl"
+version = "1.0.50"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[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 = "tokio"
+version = "1.33.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4f38200e3ef7995e5ef13baec2f432a6da0aa9ac495b2c0e8f3b7eec2c92d653"
+dependencies = [
+ "backtrace",
+ "bytes",
+ "libc",
+ "mio",
+ "num_cpus",
+ "parking_lot",
+ "pin-project-lite",
+ "signal-hook-registry",
+ "socket2 0.5.5",
+ "tokio-macros",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "tokio-boring"
+version = "3.1.0"
+source = "git+https://github.com/signalapp/boring?branch=libsignal#8245063ae6eb97d909982b89fad45bb7f0a2a1a0"
+dependencies = [
+ "boring",
+ "boring-sys",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-macros"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "tokio-rustls"
+version = "0.24.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081"
+dependencies = [
+ "rustls",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-stream"
+version = "0.1.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842"
+dependencies = [
+ "futures-core",
+ "pin-project-lite",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-tungstenite"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec509ac96e9a0c43427c74f003127d953a265737636129424288d27cb5c4b12c"
+dependencies = [
+ "futures-util",
+ "log",
+ "tokio",
+ "tungstenite 0.19.0",
+]
+
+[[package]]
+name = "tokio-tungstenite"
+version = "0.20.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c"
+dependencies = [
+ "futures-util",
+ "log",
+ "tokio",
+ "tungstenite 0.20.1",
+]
+
+[[package]]
+name = "tokio-util"
+version = "0.7.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "futures-sink",
+ "pin-project-lite",
+ "tokio",
+ "tracing",
+]
+
+[[package]]
+name = "toml_datetime"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
+
+[[package]]
+name = "toml_edit"
+version = "0.19.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
+dependencies = [
+ "indexmap 2.1.0",
+ "toml_datetime",
+ "winnow",
+]
+
+[[package]]
+name = "tower-service"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
+
+[[package]]
+name = "tracing"
+version = "0.1.40"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
+dependencies = [
+ "log",
+ "pin-project-lite",
+ "tracing-core",
+]
+
+[[package]]
+name = "tracing-core"
+version = "0.1.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
+dependencies = [
+ "once_cell",
+]
+
+[[package]]
+name = "try-lock"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
+
+[[package]]
+name = "tungstenite"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "15fba1a6d6bb030745759a9a2a588bfe8490fc8b4751a277db3a0be1c9ebbf67"
+dependencies = [
+ "byteorder",
+ "bytes",
+ "data-encoding",
+ "http",
+ "httparse",
+ "log",
+ "rand",
+ "sha1",
+ "thiserror",
+ "url",
+ "utf-8",
+]
+
+[[package]]
+name = "tungstenite"
+version = "0.20.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9"
+dependencies = [
+ "byteorder",
+ "bytes",
+ "data-encoding",
+ "http",
+ "httparse",
+ "log",
+ "rand",
+ "sha1",
+ "thiserror",
+ "url",
+ "utf-8",
+]
+
+[[package]]
+name = "typenum"
+version = "1.17.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
+
+[[package]]
+name = "unarray"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94"
+
+[[package]]
+name = "unicase"
+version = "2.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89"
+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.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
+
+[[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-segmentation"
+version = "1.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36"
+
+[[package]]
+name = "universal-hash"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8326b2c654932e3e4f9196e69d08fdf7cfd718e1dc6f66b347e6024a0c961402"
+dependencies = [
+ "generic-array",
+ "subtle",
+]
+
+[[package]]
+name = "universal-hash"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea"
+dependencies = [
+ "crypto-common",
+ "subtle",
+]
+
+[[package]]
+name = "untrusted"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
+
+[[package]]
+name = "url"
+version = "2.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5"
+dependencies = [
+ "form_urlencoded",
+ "idna",
+ "percent-encoding",
+]
+
+[[package]]
+name = "usernames"
+version = "0.1.0"
+dependencies = [
+ "criterion",
+ "curve25519-dalek",
+ "displaydoc",
+ "hkdf",
+ "lazy_static",
+ "poksho",
+ "proptest",
+ "prost",
+ "prost-build",
+ "rand",
+ "sha2",
+ "signal-crypto",
+ "subtle",
+ "thiserror",
+ "zkgroup",
+]
+
+[[package]]
+name = "utf-8"
+version = "0.7.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
+
+[[package]]
+name = "uuid"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88ad59a7560b41a70d191093a945f0b87bc1deeda46fb237479708a1d6b6cdfc"
+
+[[package]]
+name = "variant_count"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aae2faf80ac463422992abf4de234731279c058aaf33171ca70277c98406b124"
+dependencies = [
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "version_check"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+
+[[package]]
+name = "wait-timeout"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "walkdir"
+version = "2.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
+dependencies = [
+ "same-file",
+ "winapi-util",
+]
+
+[[package]]
+name = "want"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e"
+dependencies = [
+ "try-lock",
+]
+
+[[package]]
+name = "warp"
+version = "0.3.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c1e92e22e03ff1230c03a1a8ee37d2f89cd489e2e541b7550d6afad96faed169"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "headers",
+ "http",
+ "hyper 0.14.27",
+ "log",
+ "mime",
+ "mime_guess",
+ "multer",
+ "percent-encoding",
+ "pin-project",
+ "rustls-pemfile",
+ "scoped-tls",
+ "serde",
+ "serde_json",
+ "serde_urlencoded",
+ "tokio",
+ "tokio-rustls",
+ "tokio-stream",
+ "tokio-tungstenite 0.20.1",
+ "tokio-util",
+ "tower-service",
+ "tracing",
+]
+
+[[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.88"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce"
+dependencies = [
+ "cfg-if",
+ "wasm-bindgen-macro",
+]
+
+[[package]]
+name = "wasm-bindgen-backend"
+version = "0.2.88"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217"
+dependencies = [
+ "bumpalo",
+ "log",
+ "once_cell",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-macro"
+version = "0.2.88"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2"
+dependencies = [
+ "quote",
+ "wasm-bindgen-macro-support",
+]
+
+[[package]]
+name = "wasm-bindgen-macro-support"
+version = "0.2.88"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+ "wasm-bindgen-backend",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-shared"
+version = "0.2.88"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b"
+
+[[package]]
+name = "web-sys"
+version = "0.3.65"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "webpsan"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "66b5563fa963cea48af3e95b65b475bee688e78c04715dfe8c2eef6f812996d3"
+dependencies = [
+ "assert_matches",
+ "bitflags 2.4.1",
+ "bitstream-io",
+ "bytes",
+ "derive_builder",
+ "derive_more",
+ "log",
+ "mediasan-common",
+ "num-integer",
+ "num-traits",
+ "thiserror",
+]
+
+[[package]]
+name = "which"
+version = "4.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7"
+dependencies = [
+ "either",
+ "home",
+ "once_cell",
+ "rustix",
+]
+
+[[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.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
+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-core"
+version = "0.51.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64"
+dependencies = [
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.45.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
+dependencies = [
+ "windows-targets 0.42.2",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
+dependencies = [
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
+dependencies = [
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
+dependencies = [
+ "windows_aarch64_gnullvm 0.48.5",
+ "windows_aarch64_msvc 0.48.5",
+ "windows_i686_gnu 0.48.5",
+ "windows_i686_msvc 0.48.5",
+ "windows_x86_64_gnu 0.48.5",
+ "windows_x86_64_gnullvm 0.48.5",
+ "windows_x86_64_msvc 0.48.5",
+]
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
+
+[[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.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
+
+[[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.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
+
+[[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.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
+
+[[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.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
+
+[[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.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
+
+[[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.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
+
+[[package]]
+name = "winnow"
+version = "0.5.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "176b6138793677221d420fd2f0aeeced263f197688b36484660da767bca2fa32"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "x25519-dalek"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fb66477291e7e8d2b0ff1bcb900bf29489a9692816d79874bea351e7a8b6de96"
+dependencies = [
+ "curve25519-dalek",
+ "rand_core",
+ "serde",
+ "zeroize",
+]
+
+[[package]]
+name = "zeroize"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9"
+dependencies = [
+ "zeroize_derive",
+]
+
+[[package]]
+name = "zeroize_derive"
+version = "1.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.38",
+]
+
+[[package]]
+name = "zkcredential"
+version = "0.1.0"
+dependencies = [
+ "bincode",
+ "criterion",
+ "curve25519-dalek",
+ "derive-where",
+ "displaydoc",
+ "hex",
+ "hex-literal",
+ "lazy_static",
+ "partial-default",
+ "poksho",
+ "serde",
+ "subtle",
+]
+
+[[package]]
+name = "zkgroup"
+version = "0.9.0"
+dependencies = [
+ "aes-gcm-siv",
+ "base64",
+ "bincode",
+ "criterion",
+ "curve25519-dalek",
+ "displaydoc",
+ "hex",
+ "hex-literal",
+ "hkdf",
+ "lazy_static",
+ "libsignal-protocol",
+ "partial-default",
+ "poksho",
+ "rand",
+ "serde",
+ "sha2",
+ "signal-crypto",
+ "subtle",
+ "uuid",
+ "zkcredential",
+]
diff --git a/pkgs/by-name/li/libsignal-ffi/package.nix b/pkgs/by-name/li/libsignal-ffi/package.nix
new file mode 100644
index 000000000000..2798f2a582b7
--- /dev/null
+++ b/pkgs/by-name/li/libsignal-ffi/package.nix
@@ -0,0 +1,46 @@
+{ lib, stdenv, fetchFromGitHub, rustPlatform, runCommand, xcodebuild, protobuf, boringssl }:
+let
+ # boring-sys expects the static libraries in build/ instead of lib/
+ boringssl-wrapper = runCommand "boringssl-wrapper" { } ''
+ mkdir $out
+ cd $out
+ ln -s ${boringssl.out}/lib build
+ ln -s ${boringssl.dev}/include include
+ '';
+in
+rustPlatform.buildRustPackage rec {
+ pname = "libsignal-ffi";
+ # must match the version used in mautrix-signal
+ # see https://github.com/mautrix/signal/issues/401
+ version = "0.36.1";
+
+ src = fetchFromGitHub {
+ owner = "signalapp";
+ repo = "libsignal";
+ rev = "v${version}";
+ hash = "sha256-UD4E2kI1ZNtFhwBGphTzF37NHqbSZjQGHbliOWAMYOE=";
+ };
+
+ nativeBuildInputs = [ protobuf ] ++ lib.optionals stdenv.isDarwin [ xcodebuild ];
+ buildInputs = [ rustPlatform.bindgenHook ];
+
+ env.BORING_BSSL_PATH = "${boringssl-wrapper}";
+
+ # The Cargo.lock contains git dependencies
+ cargoLock = {
+ lockFile = ./Cargo.lock;
+ outputHashes = {
+ "boring-3.1.0" = "sha256-R6hh4K57mgV10nuVcMZETvxlQsMsmGapgCQ7pjuognk=";
+ "curve25519-dalek-4.1.1" = "sha256-p9Vx0lAaYILypsI4/RVsHZLOqZKaa4Wvf7DanLA38pc=";
+ };
+ };
+
+ cargoBuildFlags = [ "-p" "libsignal-ffi" ];
+
+ meta = with lib; {
+ description = "A C ABI library which exposes Signal protocol logic";
+ homepage = "https://github.com/signalapp/libsignal";
+ license = licenses.agpl3Plus;
+ maintainers = with maintainers; [ niklaskorz ];
+ };
+}
diff --git a/pkgs/by-name/li/livekit/package.nix b/pkgs/by-name/li/livekit/package.nix
index 54cdfbcf25f8..ed14e56b1809 100644
--- a/pkgs/by-name/li/livekit/package.nix
+++ b/pkgs/by-name/li/livekit/package.nix
@@ -5,16 +5,16 @@
buildGoModule rec {
pname = "livekit";
- version = "1.5.1";
+ version = "1.5.2";
src = fetchFromGitHub {
owner = "livekit";
repo = "livekit";
rev = "v${version}";
- hash = "sha256-3KRES/2mGO6b1ZZEGx29Yu5wgEG4NOJ7/J0xPvQiNWk=";
+ hash = "sha256-Z1N6iYXd3HswRJql3YZMot5fdkdFFbJuxyGDgLsbtQI=";
};
- vendorHash = "sha256-5wByIkMs3321u4/2vPpsZ/L5zlcgrZo0b+NjeMR1RWE=";
+ vendorHash = "sha256-O0rlezMdhoRHdK37BGKW3CHLpYfkFC1d83o5u54LQ8k=";
subPackages = [ "cmd/server" ];
diff --git a/pkgs/applications/audio/ocenaudio/default.nix b/pkgs/by-name/oc/ocenaudio/package.nix
similarity index 89%
rename from pkgs/applications/audio/ocenaudio/default.nix
rename to pkgs/by-name/oc/ocenaudio/package.nix
index daafc48deb7a..155be35c9229 100644
--- a/pkgs/applications/audio/ocenaudio/default.nix
+++ b/pkgs/by-name/oc/ocenaudio/package.nix
@@ -7,25 +7,28 @@
, libjack2
, alsa-lib
, bzip2
-, libpulseaudio }:
+, libpulseaudio
+, xz
+}:
stdenv.mkDerivation rec {
pname = "ocenaudio";
- version = "3.13.2";
+ version = "3.13.3";
src = fetchurl {
url = "https://www.ocenaudio.com/downloads/index.php/ocenaudio_debian9_64.deb?version=${version}";
- sha256 = "sha256-ITlnOrreZHTH8NDjx/hQzEV3toAwaM2bWFLqMf3btNE=";
+ hash = "sha256-B0+NyFZ9c0ljzYMJm3741TpoxFS0Zo6hxzhadYFofSA=";
};
nativeBuildInputs = [
+ alsa-lib
autoPatchelfHook
- qt5.qtbase
- qt5.wrapQtAppsHook
+ bzip2
libjack2
libpulseaudio
- bzip2
- alsa-lib
+ qt5.qtbase
+ qt5.wrapQtAppsHook
+ xz
];
buildInputs = [ dpkg ];
diff --git a/pkgs/by-name/ro/roxterm/package.nix b/pkgs/by-name/ro/roxterm/package.nix
new file mode 100644
index 000000000000..8b4f2e79c2be
--- /dev/null
+++ b/pkgs/by-name/ro/roxterm/package.nix
@@ -0,0 +1,98 @@
+{
+ at-spi2-core
+, cmake
+, dbus
+, dbus-glib
+, docbook_xsl
+, fetchFromGitHub
+, glib
+, gtk3
+, harfbuzz
+, lib
+, libXdmcp
+, libXtst
+, libepoxy
+, libpthreadstubs
+, libselinux
+, libsepol
+, libtasn1
+, libxkbcommon
+, libxslt
+, nixosTests
+, p11-kit
+, pcre2
+, pkg-config
+, stdenv
+, util-linuxMinimal
+, vte
+, wrapGAppsHook
+, xmlto
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+ pname = "roxterm";
+ version = "3.14.3";
+
+ src = fetchFromGitHub {
+ owner = "realh";
+ repo = "roxterm";
+ rev = finalAttrs.version;
+ hash = "sha256-NSOGq3rN+9X4WA8Q0gMbZ9spO/dbZkzeo4zEno/Kgcs=";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ libxslt
+ pkg-config
+ wrapGAppsHook
+ ];
+
+ buildInputs = [
+ at-spi2-core
+ dbus
+ dbus-glib
+ docbook_xsl
+ glib
+ gtk3
+ harfbuzz
+ libXdmcp
+ libXtst
+ libepoxy
+ libpthreadstubs
+ libselinux
+ libsepol
+ libtasn1
+ libxkbcommon
+ p11-kit
+ pcre2
+ util-linuxMinimal
+ vte
+ xmlto
+ ];
+
+ passthru.tests.test = nixosTests.terminal-emulators.roxterm;
+
+ meta = {
+ homepage = "https://github.com/realh/roxterm";
+ description = " A highly configurable terminal emulator";
+ longDescription = ''
+ ROXTerm is a terminal emulator intended to provide similar features to
+ gnome-terminal, based on the same VTE library. It was originally designed
+ to have a smaller footprint and quicker start-up time by not using the
+ Gnome libraries and by using a separate applet to provide the
+ configuration GUI, but thanks to all the features it's acquired over the
+ years ROXTerm can probably now be accused of bloat. However, it is more
+ configurable than gnome-terminal and aimed more at "power" users who make
+ heavy use of terminals.
+
+ It still supports the ROX desktop application layout it was named after,
+ but can also be installed in a more conventional manner for use in other
+ desktop environments.
+ '';
+ changelog = "https://github.com/realh/roxterm/blob/${finalAttrs.src.rev}/debian/changelog";
+ license = with lib.licenses; [ gpl2Plus gpl3Plus lgpl3Plus ];
+ mainProgram = "roxterm";
+ maintainers = with lib.maintainers; [ AndersonTorres ];
+ platforms = lib.platforms.linux;
+ };
+})
diff --git a/pkgs/by-name/tr/trealla/package.nix b/pkgs/by-name/tr/trealla/package.nix
index dfc5929015fa..44ae8b7775b4 100644
--- a/pkgs/by-name/tr/trealla/package.nix
+++ b/pkgs/by-name/tr/trealla/package.nix
@@ -17,13 +17,13 @@
assert lib.elem lineEditingLibrary [ "isocline" "readline" ];
stdenv.mkDerivation (finalAttrs: {
pname = "trealla";
- version = "2.31.6";
+ version = "2.32.13";
src = fetchFromGitHub {
owner = "trealla-prolog";
repo = "trealla";
rev = "v${finalAttrs.version}";
- hash = "sha256-gptWmATDwcSOUE5YYLEi6r/gVIVk0+nCeynxhD1ra/c=";
+ hash = "sha256-Meyy6muzJt/Lg76sa+nwZXCOhfeMTwO4VYTXO/o20XI=";
};
postPatch = ''
diff --git a/pkgs/by-name/ux/uxn/package.nix b/pkgs/by-name/ux/uxn/package.nix
index 3b6a9ee4d6b0..04e1a7025ac8 100644
--- a/pkgs/by-name/ux/uxn/package.nix
+++ b/pkgs/by-name/ux/uxn/package.nix
@@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "uxn";
- version = "unstable-2023-12-05";
+ version = "unstable-2023-12-25";
src = fetchFromSourcehut {
owner = "~rabbits";
repo = "uxn";
- rev = "14bf95ba390f9cb84c23ed084b69787efe253e06";
- hash = "sha256-oQAt9jDO0FZm6+6bBt/nDimkbiKsvuhsxnFcsNWvop8=";
+ rev = "3f252c0ee378933856b9b01be1b3c7da58cacad5";
+ hash = "sha256-DcKZ0LMm9Q1rC+//9jEygitVG+UuXeDXcgSZDOueExc=";
};
outputs = [ "out" "projects" ];
diff --git a/pkgs/by-name/vc/vcpkg-tool/package.nix b/pkgs/by-name/vc/vcpkg-tool/package.nix
index 0dbeac164369..3520d3cd2211 100644
--- a/pkgs/by-name/vc/vcpkg-tool/package.nix
+++ b/pkgs/by-name/vc/vcpkg-tool/package.nix
@@ -18,13 +18,13 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "vcpkg-tool";
- version = "2023-10-18";
+ version = "2023-12-12";
src = fetchFromGitHub {
owner = "microsoft";
repo = "vcpkg-tool";
rev = finalAttrs.version;
- hash = "sha256-Hm+GSKov9A6tmN10BHOTVy8aWkLOJNBMOQJNm4HnWuI=";
+ hash = "sha256-Ol31TDY3cLEzXQk8YpK2Lf3CEnM5RkJqdcm/OQGUetE=";
};
nativeBuildInputs = [
diff --git a/pkgs/by-name/vi/vinegar/package.nix b/pkgs/by-name/vi/vinegar/package.nix
index bee2a13d5027..fb34f2e79d56 100644
--- a/pkgs/by-name/vi/vinegar/package.nix
+++ b/pkgs/by-name/vi/vinegar/package.nix
@@ -1,19 +1,21 @@
-{
- lib,
- buildGoModule,
- fetchFromGitHub,
- makeBinaryWrapper,
- pkg-config,
- libGL,
- libxkbcommon,
- xorg,
- wineWowPackages,
- fetchpatch,
-}: let
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, makeBinaryWrapper
+, pkg-config
+, libGL
+, libxkbcommon
+, xorg
+, wayland
+, vulkan-headers
+, wineWowPackages
+, fetchpatch
+}:
+let
# wine-staging doesn't support overrideAttrs for now
wine = wineWowPackages.stagingFull.overrideDerivation (oldAttrs: {
patches =
- (oldAttrs.patches or [])
+ (oldAttrs.patches or [ ])
++ [
# upstream issue: https://bugs.winehq.org/show_bug.cgi?id=55604
# Here are the currently applied patches for Roblox to run under WINE:
@@ -25,46 +27,46 @@
];
});
in
- buildGoModule rec {
- pname = "vinegar";
- version = "1.5.9";
+buildGoModule rec {
+ pname = "vinegar";
+ version = "1.6.0";
- src = fetchFromGitHub {
- owner = "vinegarhq";
- repo = "vinegar";
- rev = "v${version}";
- hash = "sha256-cLzQnNmQYyAIdTGygk/CNU/mxGgcgoFTg5G/0DNwpz4=";
- };
+ src = fetchFromGitHub {
+ owner = "vinegarhq";
+ repo = "vinegar";
+ rev = "v${version}";
+ hash = "sha256-TebRAqMPrXSSKg05iX3Y/S0uACePOR/QNnNcOOMw+Xk=";
+ };
- vendorHash = "sha256-DZI4APnrldnwOmLZ9ucFBGQDxzPXTIi44eLu74WrSBI=";
+ vendorHash = "sha256-Ex6PRd3rD2jbLXlY36koNvZF3P+gAZTE9hExIfOw9CE=";
- nativeBuildInputs = [pkg-config makeBinaryWrapper];
- buildInputs = [libGL libxkbcommon xorg.libX11 xorg.libXcursor xorg.libXfixes wine];
+ nativeBuildInputs = [ pkg-config makeBinaryWrapper ];
+ buildInputs = [ libGL libxkbcommon xorg.libX11 xorg.libXcursor xorg.libXfixes wayland vulkan-headers wine ];
- buildPhase = ''
- runHook preBuild
- make PREFIX=$out
- runHook postBuild
- '';
+ buildPhase = ''
+ runHook preBuild
+ make PREFIX=$out
+ runHook postBuild
+ '';
- installPhase = ''
- runHook preInstall
- make PREFIX=$out install
- runHook postInstall
- '';
+ installPhase = ''
+ runHook preInstall
+ make PREFIX=$out install
+ runHook postInstall
+ '';
- postInstall = ''
- wrapProgram $out/bin/vinegar \
- --prefix PATH : ${lib.makeBinPath [wine]}
- '';
+ postInstall = ''
+ wrapProgram $out/bin/vinegar \
+ --prefix PATH : ${lib.makeBinPath [wine]}
+ '';
- meta = with lib; {
- description = "An open-source, minimal, configurable, fast bootstrapper for running Roblox on Linux";
- homepage = "https://github.com/vinegarhq/vinegar";
- changelog = "https://github.com/vinegarhq/vinegar/releases/tag/v${version}";
- mainProgram = "vinegar";
- license = licenses.gpl3Only;
- platforms = ["x86_64-linux" "i686-linux"];
- maintainers = with maintainers; [nyanbinary];
- };
- }
+ meta = with lib; {
+ description = "An open-source, minimal, configurable, fast bootstrapper for running Roblox on Linux";
+ homepage = "https://github.com/vinegarhq/vinegar";
+ changelog = "https://github.com/vinegarhq/vinegar/releases/tag/v${version}";
+ mainProgram = "vinegar";
+ license = licenses.gpl3Only;
+ platforms = [ "x86_64-linux" ];
+ maintainers = with maintainers; [ nyanbinary ];
+ };
+}
diff --git a/pkgs/data/themes/colloid-kde/default.nix b/pkgs/data/themes/colloid-kde/default.nix
index 24cde3f38989..5393c54f7c33 100644
--- a/pkgs/data/themes/colloid-kde/default.nix
+++ b/pkgs/data/themes/colloid-kde/default.nix
@@ -18,13 +18,7 @@ stdenvNoCC.mkDerivation rec {
hash = "sha256-AYH9fW20/p+mq6lxR1lcCV1BQ/kgcsjHncpMvYWXnWA=";
};
- # Propagate sddm theme dependencies to user env otherwise sddm does
- # not find them. Putting them in buildInputs is not enough.
- propagatedUserEnvPkgs = [
- kdeclarative.bin
- plasma-framework
- plasma-workspace
- ];
+ outputs = [ "out" "sddm" ];
postPatch = ''
patchShebangs install.sh
@@ -34,12 +28,12 @@ stdenvNoCC.mkDerivation rec {
--replace '$HOME/.config' $out/share
substituteInPlace sddm/install.sh \
- --replace /usr $out \
+ --replace /usr $sddm \
--replace '$(cd $(dirname $0) && pwd)' . \
--replace '"$UID" -eq "$ROOT_UID"' true
substituteInPlace sddm/Colloid/Main.qml \
- --replace /usr $out
+ --replace /usr $sddm
'';
installPhase = ''
@@ -50,13 +44,23 @@ stdenvNoCC.mkDerivation rec {
name= HOME="$TMPDIR" \
./install.sh --dest $out/share/themes
- mkdir -p $out/share/sddm/themes
+ mkdir -p $sddm/share/sddm/themes
cd sddm
source install.sh
runHook postInstall
'';
+ postFixup = ''
+ # Propagate sddm theme dependencies to user env otherwise sddm
+ # does not find them. Putting them in buildInputs is not enough.
+
+ mkdir -p $sddm/nix-support
+
+ printWords ${kdeclarative.bin} ${plasma-framework} ${plasma-workspace} \
+ >> $sddm/nix-support/propagated-user-env-packages
+ '';
+
passthru.updateScript = gitUpdater { };
meta = with lib; {
diff --git a/pkgs/desktops/enlightenment/efl/default.nix b/pkgs/desktops/enlightenment/efl/default.nix
index a15975872df4..34485cf87363 100644
--- a/pkgs/desktops/enlightenment/efl/default.nix
+++ b/pkgs/desktops/enlightenment/efl/default.nix
@@ -58,11 +58,11 @@
stdenv.mkDerivation rec {
pname = "efl";
- version = "1.26.3";
+ version = "1.27.0";
src = fetchurl {
url = "http://download.enlightenment.org/rel/libs/${pname}/${pname}-${version}.tar.xz";
- sha256 = "sha256-2fg6oP2TNPRN7rTklS3A5RRGg6+seG/uvOYDCVFhfRU=";
+ sha256 = "sha256-PfuZ+8wmjAvHl+L4PoxQPvneZihPQLOBu1l6CBhcAPQ=";
};
nativeBuildInputs = [
diff --git a/pkgs/desktops/enlightenment/enlightenment/default.nix b/pkgs/desktops/enlightenment/enlightenment/default.nix
index 7818df245f69..9b5abbd8a564 100644
--- a/pkgs/desktops/enlightenment/enlightenment/default.nix
+++ b/pkgs/desktops/enlightenment/enlightenment/default.nix
@@ -22,11 +22,11 @@
stdenv.mkDerivation rec {
pname = "enlightenment";
- version = "0.25.4";
+ version = "0.26.0";
src = fetchurl {
url = "https://download.enlightenment.org/rel/apps/${pname}/${pname}-${version}.tar.xz";
- sha256 = "sha256-VttdIGuCG5qIMdJucT5BCscLIlWm9D/N98Ae794jt6I=";
+ sha256 = "sha256-EbbvBnG+X+rWiL9VTDCiocaDSTrRDF/jEV/7RlVCToQ=";
};
nativeBuildInputs = [
diff --git a/pkgs/desktops/lomiri/services/hfd-service/default.nix b/pkgs/desktops/lomiri/services/hfd-service/default.nix
index cffedb0af623..e9ae4a0fe2db 100644
--- a/pkgs/desktops/lomiri/services/hfd-service/default.nix
+++ b/pkgs/desktops/lomiri/services/hfd-service/default.nix
@@ -31,10 +31,11 @@ stdenv.mkDerivation (finalAttrs: {
# Queries pkg-config via pkg_get_variable, can't override prefix
substituteInPlace init/CMakeLists.txt \
- --replace "\''${SYSTEMD_SYSTEM_DIR}" "$out/lib/systemd/system"
+ --replace 'pkg_get_variable(SYSTEMD_SYSTEM_DIR systemd systemdsystemunitdir)' 'set(SYSTEMD_SYSTEM_DIR ''${CMAKE_INSTALL_PREFIX}/lib/systemd/system)'
substituteInPlace CMakeLists.txt \
- --replace 'pkg_get_variable(AS_INTERFACES_DIR accountsservice interfacesdir)' 'set(AS_INTERFACES_DIR "''${CMAKE_INSTALL_DATADIR}/accountsservice/interfaces")' \
- --replace 'DESTINATION ''${DBUS_INTERFACES_DIR}' 'DESTINATION ${placeholder "out"}/''${DBUS_INTERFACES_DIR}'
+ --replace 'pkg_get_variable(AS_INTERFACES_DIR accountsservice interfacesdir)' 'set(AS_INTERFACES_DIR "''${CMAKE_INSTALL_FULL_DATADIR}/accountsservice/interfaces")' \
+ --replace '../../dbus-1/interfaces' "\''${CMAKE_INSTALL_PREFIX}/\''${DBUS_INTERFACES_DIR}" \
+ --replace 'DESTINATION ''${DBUS_INTERFACES_DIR}' 'DESTINATION ''${CMAKE_INSTALL_PREFIX}/''${DBUS_INTERFACES_DIR}'
substituteInPlace src/CMakeLists.txt \
--replace "\''${DBUS_INTERFACES_DIR}/org.freedesktop.Accounts.xml" '${accountsservice}/share/dbus-1/interfaces/org.freedesktop.Accounts.xml'
'';
diff --git a/pkgs/development/hare-third-party/hare-ev/default.nix b/pkgs/development/hare-third-party/hare-ev/default.nix
index 2186c0eaf532..902a56e3e10f 100644
--- a/pkgs/development/hare-third-party/hare-ev/default.nix
+++ b/pkgs/development/hare-third-party/hare-ev/default.nix
@@ -7,13 +7,13 @@
stdenv.mkDerivation {
pname = "hare-ev";
- version = "unstable-2023-10-31";
+ version = "unstable-2023-12-04";
src = fetchFromSourcehut {
owner = "~sircmpwn";
repo = "hare-ev";
- rev = "9bdbd02401334b7d762131a46e64ca2cd24846dc";
- hash = "sha256-VY8nsy5kLDMScA2ig3Rgbkf6VQlCTnGWjzGvsI9OcaQ=";
+ rev = "e3c3f7613c602672ac41a3e47c106a5bd27a2378";
+ hash = "sha256-TQsR2lXJfkPu53WpJy/K+Jruyfw8mCkEIE9DbFQoS+s=";
};
nativeCheckInputs = [
diff --git a/pkgs/development/libraries/libck/default.nix b/pkgs/development/libraries/libck/default.nix
index 35a5541bc368..cc53d4957eb4 100644
--- a/pkgs/development/libraries/libck/default.nix
+++ b/pkgs/development/libraries/libck/default.nix
@@ -11,6 +11,16 @@ stdenv.mkDerivation rec {
sha256 = "sha256-HUC+8Vd0koAmumRZ8gS5u6LVa7fUfkIYRaxVv6/7Hgg=";
};
+ postPatch = ''
+ substituteInPlace \
+ configure \
+ --replace \
+ 'COMPILER=`./.1 2> /dev/null`' \
+ "COMPILER=gcc"
+ '';
+
+ configureFlags = ["--platform=${stdenv.hostPlatform.parsed.cpu.name}}"];
+
dontDisableStatic = true;
meta = with lib; {
diff --git a/pkgs/development/libraries/libks/default.nix b/pkgs/development/libraries/libks/default.nix
index 56a8e59433cd..d3279bbe991a 100644
--- a/pkgs/development/libraries/libks/default.nix
+++ b/pkgs/development/libraries/libks/default.nix
@@ -7,17 +7,19 @@
, libuuid
, openssl
, libossp_uuid
+, freeswitch
+, nix-update-script
}:
stdenv.mkDerivation rec {
pname = "libks";
- version = "1.8.2";
+ version = "2.0.3";
src = fetchFromGitHub {
owner = "signalwire";
repo = pname;
rev = "v${version}";
- sha256 = "sha256-TJ3q97K3m3zYGB1D5lLVyrh61L3vtnP5I64lP/DYzW4=";
+ sha256 = "sha256-iAgiGo/PMG0L4S/ZqSPL7Hl8akCNyva4JhaOkcHit8w=";
};
patches = [
@@ -38,7 +40,13 @@ stdenv.mkDerivation rec {
++ lib.optional stdenv.isLinux libuuid
++ lib.optional stdenv.isDarwin libossp_uuid;
+ passthru = {
+ tests.freeswitch = freeswitch;
+ updateScript = nix-update-script { };
+ };
+
meta = with lib; {
+ broken = stdenv.isDarwin;
description = "Foundational support for signalwire C products";
homepage = "https://github.com/signalwire/libks";
maintainers = with lib.maintainers; [ misuzu ];
diff --git a/pkgs/development/libraries/libserdes/default.nix b/pkgs/development/libraries/libserdes/default.nix
index a3cec3788b58..fad83031f013 100644
--- a/pkgs/development/libraries/libserdes/default.nix
+++ b/pkgs/development/libraries/libserdes/default.nix
@@ -1,42 +1,35 @@
{ stdenv
, lib
, fetchFromGitHub
-, fetchpatch
, perl
+, which
, boost
, rdkafka
, jansson
, curl
, avro-c
-, avro-cpp }:
+, avro-cpp
+, nix-update-script }:
stdenv.mkDerivation rec {
pname = "libserdes";
- version = "6.2.0";
+ version = "7.5.3";
src = fetchFromGitHub {
owner = "confluentinc";
repo = pname;
rev = "v${version}";
- sha256 = "194ras18xw5fcnjgg1isnb24ydx9040ndciniwcbdb7w7wd901gc";
+ hash = "sha256-rg4SWa9nIDT6JrnnCDwdiFE1cvpUn0HWHn+bPkXMHQ4=";
};
outputs = [ "dev" "out" ];
- nativeBuildInputs = [ perl ];
+ nativeBuildInputs = [ perl which ];
buildInputs = [ boost rdkafka jansson curl avro-c avro-cpp ];
makeFlags = [ "GEN_PKG_CONFIG=y" ];
- patches = [
- # Fix compatibility with Avro master branch
- (fetchpatch {
- url = "https://github.com/confluentinc/libserdes/commit/d7a355e712ab63ec77f6722fb5a9e8056e7416a2.patch";
- sha256 = "14bdx075n4lxah63kp7phld9xqlz3pzs03yf3wbq4nmkgwac10dh";
- })
- ];
-
postPatch = ''
patchShebangs configure lds-gen.pl
'' + lib.optionalString (stdenv.cc.libcxx != null) ''
@@ -65,6 +58,8 @@ stdenv.mkDerivation rec {
chmod -x ''${!outputInclude}/include/libserdes/*.h
'';
+ passthru.updateScript = nix-update-script { };
+
meta = with lib; {
description = "A schema-based serializer/deserializer C/C++ library with support for Avro and the Confluent Platform Schema Registry";
homepage = "https://github.com/confluentinc/libserdes";
diff --git a/pkgs/development/libraries/libtins/default.nix b/pkgs/development/libraries/libtins/default.nix
index b96c02a35bfd..b27ad6634797 100644
--- a/pkgs/development/libraries/libtins/default.nix
+++ b/pkgs/development/libraries/libtins/default.nix
@@ -1,4 +1,4 @@
-{ boost, cmake, fetchFromGitHub, gtest, libpcap, openssl, lib, stdenv }:
+{ boost, cmake, fetchFromGitHub, fetchpatch, gtest, libpcap, openssl, lib, stdenv }:
stdenv.mkDerivation rec {
pname = "libtins";
@@ -11,6 +11,17 @@ stdenv.mkDerivation rec {
sha256 = "sha256-mXbinXh/CO0SZZ71+K+FozbHCCoi12+AIa2o+P0QmUw=";
};
+ patches = [
+ # Pull gcc-13 fixes:
+ # https://github.com/mfontanini/libtins/pull/496
+ # TODO: remove when upgrade to the next version.
+ (fetchpatch {
+ name = "gcc-13.patch";
+ url = "https://github.com/mfontanini/libtins/commit/812be7966d445ec56e88eab512f8fd2d57152427.patch";
+ hash = "sha256-5RCFPe95r1CBrAocjTPR2SvUlgaGa1aBc8RazyxUj3M=";
+ })
+ ];
+
postPatch = ''
rm -rf googletest
cp -r ${gtest.src} googletest
diff --git a/pkgs/development/libraries/tinyxml-2/default.nix b/pkgs/development/libraries/tinyxml-2/default.nix
index 93500e17b7d4..5e63893bb232 100644
--- a/pkgs/development/libraries/tinyxml-2/default.nix
+++ b/pkgs/development/libraries/tinyxml-2/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "tinyxml-2";
- version = "9.0.0";
+ version = "10.0.0";
src = fetchFromGitHub {
repo = "tinyxml2";
owner = "leethomason";
rev = version;
- sha256 = "sha256-AQQOctXi7sWIH/VOeSUClX6hlm1raEQUOp+VoPjLM14=";
+ sha256 = "sha256-9xrpPFMxkAecg3hMHzzThuy0iDt970Iqhxs57Od+g2g=";
};
nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/python-modules/a2wsgi/default.nix b/pkgs/development/python-modules/a2wsgi/default.nix
index a21ddda54c41..9f798a03edd6 100644
--- a/pkgs/development/python-modules/a2wsgi/default.nix
+++ b/pkgs/development/python-modules/a2wsgi/default.nix
@@ -10,12 +10,12 @@
buildPythonPackage rec {
pname = "a2wsgi";
- version = "1.9.0";
+ version = "1.10.0";
format = "pyproject";
src = fetchPypi {
inherit pname version;
- hash = "sha256-cd/UGOUbnoI1nrRZx+2hTtg/j0ClD0dKbXNXpnHNPl4=";
+ hash = "sha256-yA7qK3Uu2kEhbGRbgqQ6YvYAbGM27zGn2xQDOZ7ffBY=";
};
nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/mandown/default.nix b/pkgs/development/python-modules/mandown/default.nix
index ccc0e99b5111..8ecdedfa2b50 100644
--- a/pkgs/development/python-modules/mandown/default.nix
+++ b/pkgs/development/python-modules/mandown/default.nix
@@ -17,14 +17,14 @@
buildPythonPackage rec {
pname = "mandown";
- version = "1.6.0";
+ version = "1.6.1";
format = "pyproject";
src = fetchFromGitHub {
owner = "potatoeggy";
repo = "mandown";
rev = "refs/tags/v${version}";
- hash = "sha256-2kFzB1xLVEvO7Vo39lwQsVirRY6Z8GMczWK2b1oVYTg=";
+ hash = "sha256-vf7BCreRb77QkurZJ5cKCVxZe+fErd7/6NQTupa4Xao=";
};
nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/neo4j/default.nix b/pkgs/development/python-modules/neo4j/default.nix
index f75be1cfc723..d79bf9587c53 100644
--- a/pkgs/development/python-modules/neo4j/default.nix
+++ b/pkgs/development/python-modules/neo4j/default.nix
@@ -8,7 +8,7 @@
buildPythonPackage rec {
pname = "neo4j";
- version = "5.15.0";
+ version = "5.16.0";
format = "setuptools";
disabled = pythonOlder "3.7";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
owner = "neo4j";
repo = "neo4j-python-driver";
rev = "refs/tags/${version}";
- hash = "sha256-vO/LzLQ7pA/4KcX48dIM9eH6z4XMbse0xGOJxZPcMfo=";
+ hash = "sha256-ly/R2ufd5gEkUyfajpeMQblTiKipC9HFtxkWkh16zLo=";
};
propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pyunifiprotect/default.nix b/pkgs/development/python-modules/pyunifiprotect/default.nix
index afb99b74c6dc..5fcd6003dc84 100644
--- a/pkgs/development/python-modules/pyunifiprotect/default.nix
+++ b/pkgs/development/python-modules/pyunifiprotect/default.nix
@@ -32,7 +32,7 @@
buildPythonPackage rec {
pname = "pyunifiprotect";
- version = "4.22.3";
+ version = "4.22.4";
pyproject = true;
disabled = pythonOlder "3.9";
@@ -41,7 +41,7 @@ buildPythonPackage rec {
owner = "briis";
repo = "pyunifiprotect";
rev = "refs/tags/v${version}";
- hash = "sha256-KpijjKy5poiWghupXq8rNCtzuPXsPgu+ePAowhzOSYI=";
+ hash = "sha256-xob7TmcI4hfxFmjspNfpdNEQBIJnyisykEcvr63s/d8=";
};
env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/pkgs/development/tools/misc/sysbench/default.nix b/pkgs/development/tools/misc/sysbench/default.nix
index 1e15c6ab0f2f..85d289e49b7a 100644
--- a/pkgs/development/tools/misc/sysbench/default.nix
+++ b/pkgs/development/tools/misc/sysbench/default.nix
@@ -5,6 +5,7 @@
, pkg-config
, libmysqlclient
, libaio
+, libck
, luajit
# For testing:
, testers
@@ -16,7 +17,8 @@ stdenv.mkDerivation rec {
version = "1.0.20";
nativeBuildInputs = [ autoreconfHook pkg-config ];
- buildInputs = [ libmysqlclient luajit ] ++ lib.optionals stdenv.isLinux [ libaio ];
+ buildInputs = [ libmysqlclient luajit libck ] ++ lib.optionals stdenv.isLinux [ libaio ];
+ depsBuildBuild = [ pkg-config ];
src = fetchFromGitHub {
owner = "akopytov";
@@ -31,6 +33,9 @@ stdenv.mkDerivation rec {
# The bundled version does not build on aarch64-darwin:
# https://github.com/akopytov/sysbench/issues/416
"--with-system-luajit"
+ "--with-system-ck"
+ "--with-mysql-includes=${lib.getDev libmysqlclient}/include/mysql"
+ "--with-mysql-libs=${libmysqlclient}/lib/mysql"
];
passthru.tests = {
diff --git a/pkgs/development/tools/mockgen/default.nix b/pkgs/development/tools/mockgen/default.nix
index 51cd2428c2e9..ed2aa4e50d93 100644
--- a/pkgs/development/tools/mockgen/default.nix
+++ b/pkgs/development/tools/mockgen/default.nix
@@ -1,28 +1,49 @@
-{ buildGoModule, fetchFromGitHub, lib }:
+{ buildGoModule
+, fetchFromGitHub
+, lib
+, testers
+, mockgen
+}:
buildGoModule rec {
pname = "mockgen";
- version = "1.6.0";
+ version = "0.4.0";
src = fetchFromGitHub {
- owner = "golang";
+ owner = "uber-go";
repo = "mock";
rev = "v${version}";
- sha256 = "sha256-5Kp7oTmd8kqUN+rzm9cLqp9nb3jZdQyltGGQDiRSWcE=";
+ sha256 = "sha256-3nt70xrZisK5vgQa+STZPiY4F9ITKw8PbBWcKoBn4Vc=";
};
- vendorHash = "sha256-5gkrn+OxbNN8J1lbgbxM8jACtKA7t07sbfJ7gVJWpJM=";
+ vendorHash = "sha256-mcNVud2jzvlPPQEaar/eYZkP71V2Civz+R5v10+tewA=";
+
+ CGO_ENABLED = 0;
subPackages = [ "mockgen" ];
- preCheck = ''
- export GOROOT="$(go env GOROOT)"
- '';
+ ldflags = [
+ "-X=main.version=${version}"
+ "-X=main.date=1970-01-01T00:00:00Z"
+ "-X=main.commit=unknown"
+ ];
+
+ passthru.tests.version = testers.testVersion {
+ package = mockgen;
+ command = "mockgen -version";
+ version = ''
+ v${version}
+ Commit: unknown
+ Date: 1970-01-01T00:00:00Z
+ '';
+ };
meta = with lib; {
description = "GoMock is a mocking framework for the Go programming language";
- homepage = "https://github.com/golang/mock";
+ homepage = "https://github.com/uber-go/mock";
+ changelog = "https://github.com/uber-go/mock/blob/v${version}/CHANGELOG.md";
license = licenses.asl20;
maintainers = with maintainers; [ bouk ];
+ mainProgram = "mockgen";
};
}
diff --git a/pkgs/development/tools/rust/cargo-llvm-cov/default.nix b/pkgs/development/tools/rust/cargo-llvm-cov/default.nix
index cf8858271d2d..6809aef43799 100644
--- a/pkgs/development/tools/rust/cargo-llvm-cov/default.nix
+++ b/pkgs/development/tools/rust/cargo-llvm-cov/default.nix
@@ -26,7 +26,7 @@
let
pname = "cargo-llvm-cov";
- version = "0.5.39";
+ version = "0.6.0";
owner = "taiki-e";
homepage = "https://github.com/${owner}/${pname}";
@@ -37,7 +37,7 @@ let
cargoLock = fetchurl {
name = "Cargo.lock";
url = "https://crates.io/api/v1/crates/${pname}/${version}/download";
- sha256 = "sha256-iaY4whQ/w6jpQ3utebtV87mCJiawI0G8ud45SVTb39o=";
+ sha256 = "sha256-n/LMICQ+38Y9PrzFh9uJ0ljmUrAxfue2l1HculuZ1x8=";
downloadToTemp = true;
postFetch = ''
tar xzf $downloadedFile ${pname}-${version}/Cargo.lock
@@ -55,7 +55,7 @@ rustPlatform.buildRustPackage {
inherit owner;
repo = pname;
rev = "v${version}";
- sha256 = "sha256-aKUVOaVv3tlWKwPbmGmK0wEAudg6tSnXh4Tty9aGctk=";
+ sha256 = "sha256-Q1Us7VhvWaCQP9Aik9Fd0rXLP/tuSHmc98+3HoY2YNY=";
leaveDotGit = true;
};
@@ -64,7 +64,7 @@ rustPlatform.buildRustPackage {
cp ${cargoLock} source/Cargo.lock
'';
- cargoSha256 = "sha256-/x3ZjPJWCsuzyOPPeJ+ZulTTBrftoAkPRDrMqqUOq/8=";
+ cargoSha256 = "sha256-42s/90clkRXkNIZZxZQRwhNxMdCvgiknkCs/hWsofw0=";
# `cargo-llvm-cov` reads these environment variables to find these binaries,
# which are needed to run the tests
diff --git a/pkgs/development/tools/rust/cargo-show-asm/default.nix b/pkgs/development/tools/rust/cargo-show-asm/default.nix
index faa833e17c2c..580e52f30094 100644
--- a/pkgs/development/tools/rust/cargo-show-asm/default.nix
+++ b/pkgs/development/tools/rust/cargo-show-asm/default.nix
@@ -9,14 +9,14 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-show-asm";
- version = "0.2.23";
+ version = "0.2.24";
src = fetchCrate {
inherit pname version;
- hash = "sha256-/vtLRigu/DjvzB3k5UENrUm5JWMhFUV/kkE+2pzgTKo=";
+ hash = "sha256-VRRuC/y1+oZoM0SKCaVTa1sK80dbrtyAxc2OFSxhI/Q=";
};
- cargoHash = "sha256-X9nFwsh6Q82EG/0iYlTUDkkm2okYfTLbOihslNREQTY=";
+ cargoHash = "sha256-rytxXaJk7r+ktgxsUY+NxMOJdqnsvcyXRSswEriYH+c=";
nativeBuildInputs = [
installShellFiles
diff --git a/pkgs/development/tools/tailwindcss/default.nix b/pkgs/development/tools/tailwindcss/default.nix
index 44328eb46474..0ef0329d306f 100644
--- a/pkgs/development/tools/tailwindcss/default.nix
+++ b/pkgs/development/tools/tailwindcss/default.nix
@@ -18,16 +18,16 @@ let
}.${system} or throwSystem;
hash = {
- aarch64-darwin = "sha256-ROZVmhdy3vltNeSgV65aAwythgydusYYVB7XQOJ/spw=";
- aarch64-linux = "sha256-aX6CTnsWCwf0wDc7wl3skHwC5aJgoBz/2JtgS34eX4s=";
- armv7l-linux = "sha256-q1449OZ5wvgdJjxhg1+noQVFcFfHKokHtV6CbR8evgs=";
- x86_64-darwin = "sha256-2eVT5TbektDvXYQzaBc0A9bxv8bKY70cmdIA3WN0u68=";
- x86_64-linux = "sha256-i0fjaFQbzXL2DIN5Q/+1GRhWTRoaa4tGnDCv6Cl4BhI=";
+ aarch64-darwin = "sha256-m35adxhRSEFV6BIpn89VKVQRklI+xWK4sNO4u2corCg=";
+ aarch64-linux = "sha256-oKSrc579aO7DxOsP9UTE0LZsKfNoIdZ97Uy1nTMjGqk=";
+ armv7l-linux = "sha256-YJ0UGQuBl0Etsw1cra2i741RQ7NOOyoYPmvNWCOeOIU=";
+ x86_64-darwin = "sha256-5R5iGn2uJuTMQwnsXQmfDkyGAPLbP+j9OHzt5OMIW8E=";
+ x86_64-linux = "sha256-S4/rjrBjK7sh5D+V6On/r5NXLII0fClnS+7lKmDEML4=";
}.${system} or throwSystem;
in
stdenv.mkDerivation rec {
pname = "tailwindcss";
- version = "3.3.6";
+ version = "3.4.0";
src = fetchurl {
url = "https://github.com/tailwindlabs/tailwindcss/releases/download/v${version}/tailwindcss-${plat}";
diff --git a/pkgs/development/web/bun/default.nix b/pkgs/development/web/bun/default.nix
index 125671f9be46..8cb7750d312f 100644
--- a/pkgs/development/web/bun/default.nix
+++ b/pkgs/development/web/bun/default.nix
@@ -12,7 +12,7 @@
}:
stdenvNoCC.mkDerivation rec {
- version = "1.0.18";
+ version = "1.0.20";
pname = "bun";
src = passthru.sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}");
@@ -51,19 +51,19 @@ stdenvNoCC.mkDerivation rec {
sources = {
"aarch64-darwin" = fetchurl {
url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-aarch64.zip";
- hash = "sha256-z3C6V8jG/et+CizWHHx6zN56JBe4QBhEKbDQgx67dmc=";
+ hash = "sha256-rwBU4jdD4sTB3wTS3uh1Fq88IW+LB/S/srMAMPJsQ1M=";
};
"aarch64-linux" = fetchurl {
url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-aarch64.zip";
- hash = "sha256-xnFN1Kiaerot6ieMqf5fvyq826vE4KpM57r/7wz4C7o=";
+ hash = "sha256-kzg4pT4e6evvyPhkC3wmwWsRvSpVCM45jgn+yvEvTaI=";
};
"x86_64-darwin" = fetchurl {
url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-x64.zip";
- hash = "sha256-cNfTiMSdeCINchtRtAA1Lv4vVmrxwhLQNUe+96UFYp4=";
+ hash = "sha256-nIE5/h+9ShoOywA7isHW+X+J6rQF2oBgnNI7rh0ZNu0=";
};
"x86_64-linux" = fetchurl {
url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-x64.zip";
- hash = "sha256-qwqgaU3zYiuer4tI4JiSsZd94IO6xn+dSjJZkM70WP4=";
+ hash = "sha256-NISClwFmDflxx09gWgo2Cpx/QXxoq4iDcYuXUT1FTn8=";
};
};
updateScript = writeShellScript "update-bun" ''
diff --git a/pkgs/games/rocksndiamonds/default.nix b/pkgs/games/rocksndiamonds/default.nix
index da5451e21376..67d798f8d4a6 100644
--- a/pkgs/games/rocksndiamonds/default.nix
+++ b/pkgs/games/rocksndiamonds/default.nix
@@ -12,11 +12,11 @@
stdenv.mkDerivation rec {
pname = "rocksndiamonds";
- version = "4.3.8.0";
+ version = "4.3.8.1";
src = fetchurl {
url = "https://www.artsoft.org/RELEASES/linux/${pname}/${pname}-${version}-linux.tar.gz";
- hash = "sha256-6RHQEcO9/tngZZqSTin74HkZflnRLh+dfvvxczpdcGU=";
+ hash = "sha256-kc8E9hyXSr8UdwDA5I4/iP6NfpV/Lso5Q//E/cV02UA=";
};
desktopItem = makeDesktopItem {
diff --git a/pkgs/misc/hdt/default.nix b/pkgs/misc/hdt/default.nix
index 9e1efd5f836d..e7c46d78588d 100644
--- a/pkgs/misc/hdt/default.nix
+++ b/pkgs/misc/hdt/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, libtool, pkg-config, zlib, serd }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, autoreconfHook, libtool, pkg-config, zlib, serd }:
stdenv.mkDerivation rec {
pname = "hdt";
@@ -11,6 +11,16 @@ stdenv.mkDerivation rec {
sha256 = "1vsq80jnix6cy78ayag7v8ajyw7h8dqyad1q6xkf2hzz3skvr34z";
};
+ patches = [
+ # Pull fix for gcc-13 compatibility pending upstream inclusion:
+ # https://github.com/rdfhdt/hdt-cpp/pull/276
+ (fetchpatch {
+ name = "gcc-13.patch";
+ url = "https://github.com/rdfhdt/hdt-cpp/commit/1b775835c6661c67cb18f5d6f65638ba7d4ecf3c.patch";
+ hash = "sha256-2ppcA+Ztw5G/buW2cwCNbuGeUuvgvSruW3OarWNCIHI=";
+ })
+ ];
+
buildInputs = [ zlib serd ];
nativeBuildInputs = [ autoreconfHook libtool pkg-config ];
diff --git a/pkgs/misc/opensbi/default.nix b/pkgs/misc/opensbi/default.nix
index e2a9600e2734..347e7deb0d31 100644
--- a/pkgs/misc/opensbi/default.nix
+++ b/pkgs/misc/opensbi/default.nix
@@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "opensbi";
- version = "1.3.1";
+ version = "1.4";
src = fetchFromGitHub {
owner = "riscv-software-src";
repo = "opensbi";
rev = "v${version}";
- hash = "sha256-JNkPvmKYd5xbGB2lsZKWrpI6rBIckWbkLYu98bw7+QY=";
+ hash = "sha256-T8ZeAzjM9aeTXitjE7s+m+jjGGtDo2jK1qO5EuKiVLU=";
};
postPatch = ''
@@ -36,6 +36,8 @@ stdenv.mkDerivation rec {
"FW_FDT_PATH=${withFDT}"
];
+ enableParallelBuilding = true;
+
dontStrip = true;
dontPatchELF = true;
diff --git a/pkgs/misc/stabber/default.nix b/pkgs/misc/stabber/default.nix
index ff89241a2469..7ec9a8985e1d 100644
--- a/pkgs/misc/stabber/default.nix
+++ b/pkgs/misc/stabber/default.nix
@@ -15,6 +15,11 @@ stdenv.mkDerivation {
sha256 = "0042nbgagl4gcxa5fj7bikjdi1gbk0jwyqnzc5lswpb0l5y0i1ql";
};
+ postPatch = ''
+ # New toolchainsd like gcc-13 trigger warnings and fail the build.
+ substituteInPlace configure.ac --replace "-Werror" ""
+ '';
+
preAutoreconf = ''
mkdir m4
'';
diff --git a/pkgs/os-specific/linux/usbguard/default.nix b/pkgs/os-specific/linux/usbguard/default.nix
index 46e9ee3d0a55..e43ee0b421dc 100644
--- a/pkgs/os-specific/linux/usbguard/default.nix
+++ b/pkgs/os-specific/linux/usbguard/default.nix
@@ -1,6 +1,7 @@
{ stdenv
, lib
, fetchFromGitHub
+, fetchpatch
, autoreconfHook
, installShellFiles
, nixosTests
@@ -32,6 +33,16 @@ stdenv.mkDerivation rec {
fetchSubmodules = true;
};
+ patches = [
+ # Pull upstream fix for gcc-13:
+ # https://github.com/USBGuard/usbguard/pull/586
+ (fetchpatch {
+ name = "gcc-13.patch";
+ url = "https://github.com/USBGuard/usbguard/commit/22b1e0897af977cc96af926c730ff948bd120bb5.patch";
+ hash = "sha256-yw0ZHcn6naHcsfsqdBB/aTgCwvEHecew/6HDmjyY2ZA=";
+ })
+ ];
+
nativeBuildInputs = [
autoreconfHook
installShellFiles
diff --git a/pkgs/servers/bloat/default.nix b/pkgs/servers/bloat/default.nix
index 4f9e5feb915b..3752b167188f 100644
--- a/pkgs/servers/bloat/default.nix
+++ b/pkgs/servers/bloat/default.nix
@@ -6,12 +6,12 @@
buildGoModule {
pname = "bloat";
- version = "unstable-2023-10-25";
+ version = "unstable-2023-12-28";
src = fetchgit {
url = "git://git.freesoftwareextremist.com/bloat";
- rev = "f4881e72675e87a9eae716436c3ac18a788d596d";
- hash = "sha256-i6HjhGPPXKtQ7hVPECk9gZglFmjb/Fo9pFIq5ikw4Y8=";
+ rev = "1d61f1aa27376e778b7a517fdd5739a8c1976d2e";
+ hash = "sha256-u75COa68sKhWeR3asQGgu2thQmDDGpJPmXLgnesQfNc=";
};
vendorHash = null;
diff --git a/pkgs/servers/mautrix-signal/default.nix b/pkgs/servers/mautrix-signal/default.nix
index eb886482c2ff..3b913a2bd462 100644
--- a/pkgs/servers/mautrix-signal/default.nix
+++ b/pkgs/servers/mautrix-signal/default.nix
@@ -1,72 +1,36 @@
-{ lib, python3, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub, olm, libsignal-ffi }:
-python3.pkgs.buildPythonPackage rec {
+buildGoModule {
pname = "mautrix-signal";
- version = "0.4.3";
+ # mautrix-signal's latest released version v0.4.3 still uses the Python codebase
+ # which is broken for new devices, see https://github.com/mautrix/signal/issues/388.
+ # The new Go version fixes this by using the official libsignal as a library and
+ # can be upgraded to directly from the Python version.
+ version = "unstable-2023-12-30";
src = fetchFromGitHub {
owner = "mautrix";
repo = "signal";
- rev = "refs/tags/v${version}";
- sha256 = "sha256-QShyuwHiWRcP1hGkvCQfixvoUQ/FXr2DYC5VrcMKX48=";
+ rev = "6abe80e6c79b31b5dc37a484b65d346a1ffd4f05";
+ hash = "sha256-EDSP+kU0EmIaYbAB/hxAUTEay+H5aqn9ovBQFZg6wJk=";
};
- postPatch = ''
- # the version mangling in mautrix_signal/get_version.py interacts badly with pythonRelaxDepsHook
- substituteInPlace setup.py \
- --replace 'version=version' 'version="${version}"'
- '';
-
- nativeBuildInputs = with python3.pkgs; [
- pythonRelaxDepsHook
+ buildInputs = [
+ olm
+ # must match the version used in https://github.com/mautrix/signal/tree/main/pkg/libsignalgo
+ # see https://github.com/mautrix/signal/issues/401
+ libsignal-ffi
];
- pythonRelaxDeps = [
- "mautrix"
- ];
-
- propagatedBuildInputs = with python3.pkgs; [
- commonmark
- aiohttp
- aiosqlite
- asyncpg
- attrs
- commonmark
- mautrix
- phonenumbers
- pillow
- prometheus-client
- pycryptodome
- python-olm
- python-magic
- qrcode
- ruamel-yaml
- unpaddedbase64
- yarl
- ];
+ vendorHash = "sha256-f3sWX+mBouuxVKu+fZIYTWLXT64fllUWpcUYAxjzQpI=";
doCheck = false;
- postInstall = ''
- mkdir -p $out/bin
-
- # Make a little wrapper for running mautrix-signal with its dependencies
- echo "$mautrixSignalScript" > $out/bin/mautrix-signal
- echo "#!/bin/sh
- exec python -m mautrix_signal \"\$@\"
- " > $out/bin/mautrix-signal
- chmod +x $out/bin/mautrix-signal
- wrapProgram $out/bin/mautrix-signal \
- --prefix PATH : "${python3}/bin" \
- --prefix PYTHONPATH : "$PYTHONPATH"
- '';
-
meta = with lib; {
homepage = "https://github.com/mautrix/signal";
description = "A Matrix-Signal puppeting bridge";
license = licenses.agpl3Plus;
- platforms = platforms.linux;
- maintainers = with maintainers; [ expipiplus1 ];
+ maintainers = with maintainers; [ expipiplus1 niklaskorz ma27 ];
mainProgram = "mautrix-signal";
};
}
diff --git a/pkgs/servers/unifi/default.nix b/pkgs/servers/unifi/default.nix
index e5106ede6a9c..6390d384a35a 100644
--- a/pkgs/servers/unifi/default.nix
+++ b/pkgs/servers/unifi/default.nix
@@ -71,7 +71,7 @@ in rec {
};
unifi8 = generic {
- version = "8.0.7";
- sha256 = "sha256-QiHXoPjOZsWKT3G3C6bzLhYxBCnT/oFlvw9Hu9tkAaY=";
+ version = "8.0.24";
+ sha256 = "sha256-fmvf/27J4K2Lf2nY1tAixkk+vIg+SKbGoGLvYlEmk2g=";
};
}
diff --git a/pkgs/shells/carapace/default.nix b/pkgs/shells/carapace/default.nix
index c90096ca5a3c..986fdd1300db 100644
--- a/pkgs/shells/carapace/default.nix
+++ b/pkgs/shells/carapace/default.nix
@@ -24,7 +24,7 @@ buildGoModule rec {
tags = [ "release" ];
preBuild = ''
- go generate ./...
+ GOOS= GOARCH= go generate ./...
'';
passthru.tests.version = testers.testVersion { package = carapace; };
diff --git a/pkgs/tools/admin/drawterm/default.nix b/pkgs/tools/admin/drawterm/default.nix
index 632da8db0a2b..0fafd28ae3c2 100644
--- a/pkgs/tools/admin/drawterm/default.nix
+++ b/pkgs/tools/admin/drawterm/default.nix
@@ -14,17 +14,18 @@
, wlr-protocols
, pulseaudio
, config
+, nixosTests
}:
stdenv.mkDerivation {
pname = "drawterm";
- version = "unstable-2023-09-03";
+ version = "unstable-2023-12-23";
src = fetchFrom9Front {
owner = "plan9front";
repo = "drawterm";
- rev = "c4ea4d299aa1bbbcc972c04adf06c18245ce7674";
- hash = "sha256-Tp3yZb1nteOlz/KhydFdjBrj3OrY20s/Ltfk/EBrIyk=";
+ rev = "f9ae0c837bf8351037689f1985c1a52c1570ba30";
+ hash = "sha256-wJWMdD9OmGybIwgBNJ8LxxV21L4SaV22OxAILsDWG3U=";
};
enableParallelBuilding = true;
@@ -56,7 +57,10 @@ stdenv.mkDerivation {
installManPage drawterm.1
'';
- passthru.updateScript = unstableGitUpdater { shallowClone = false; };
+ passthru = {
+ updateScript = unstableGitUpdater { shallowClone = false; };
+ tests = nixosTests.drawterm;
+ };
meta = with lib; {
description = "Connect to Plan 9 CPU servers from other operating systems.";
diff --git a/pkgs/tools/audio/beets/plugins/copyartifacts.nix b/pkgs/tools/audio/beets/plugins/copyartifacts.nix
index f2d65eb897e9..132eda28ed30 100644
--- a/pkgs/tools/audio/beets/plugins/copyartifacts.nix
+++ b/pkgs/tools/audio/beets/plugins/copyartifacts.nix
@@ -1,14 +1,14 @@
{ lib, fetchFromGitHub, beets, python3Packages }:
-python3Packages.buildPythonApplication {
+python3Packages.buildPythonApplication rec {
pname = "beets-copyartifacts";
- version = "unstable-2020-02-15";
+ version = "0.1.5";
src = fetchFromGitHub {
repo = "beets-copyartifacts";
owner = "adammillerio";
- rev = "85eefaebf893cb673fa98bfde48406ec99fd1e4b";
- sha256 = "sha256-bkT2BZZ2gdcacgvyrVe2vMrOMV8iMAm8Q5xyrZzyqU0=";
+ rev = "v${version}";
+ sha256 = "sha256-UTZh7T6Z288PjxFgyFxHnPt0xpAH3cnr8/jIrlJhtyU=";
};
postPatch = ''
@@ -27,7 +27,7 @@ python3Packages.buildPythonApplication {
meta = {
description = "Beets plugin to move non-music files during the import process";
- homepage = "https://github.com/sbarakat/beets-copyartifacts";
+ homepage = "https://github.com/adammillerio/beets-copyartifacts";
license = lib.licenses.mit;
inherit (beets.meta) platforms;
};
diff --git a/pkgs/tools/audio/whisper-ctranslate2/default.nix b/pkgs/tools/audio/whisper-ctranslate2/default.nix
index c8121e8ffbaf..5e4127214f56 100644
--- a/pkgs/tools/audio/whisper-ctranslate2/default.nix
+++ b/pkgs/tools/audio/whisper-ctranslate2/default.nix
@@ -5,7 +5,7 @@
}:
let
pname = "whisper-ctranslate2";
- version = "0.3.4";
+ version = "0.3.5";
in
python3.pkgs.buildPythonApplication {
inherit pname version;
@@ -17,7 +17,7 @@ python3.pkgs.buildPythonApplication {
owner = "Softcatala";
repo = "whisper-ctranslate2";
rev = version;
- hash = "sha256-6tbCEvoOd97/rWC8XwKUS2FJXaB7PKReCctWRaYqUGU=";
+ hash = "sha256-2eBJghncgzIbQKItj0Qng5xwvh9BBHNMxlbjO+tUdVU=";
};
propagatedBuildInputs = with python3.pkgs; [
diff --git a/pkgs/tools/games/pocket-updater-utility/default.nix b/pkgs/tools/games/pocket-updater-utility/default.nix
index ded1180d472e..f477cee54494 100644
--- a/pkgs/tools/games/pocket-updater-utility/default.nix
+++ b/pkgs/tools/games/pocket-updater-utility/default.nix
@@ -12,13 +12,13 @@
buildDotnetModule rec {
pname = "pocket-updater-utility";
- version = "2.38.1";
+ version = "2.41.0";
src = fetchFromGitHub {
owner = "mattpannella";
repo = "${pname}";
rev = "${version}";
- hash = "sha256-Lk5YHouQSHSWWoqTiZPjaROGM0aV7FQUvnQV/NCWV/E=";
+ hash = "sha256-rT4aK+nkqTONvo8HU60R35MWM8odZQUtEPEV/yUZb90=";
};
buildInputs = [
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix
index 084f1c2dfe21..ccabc9b58444 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix
@@ -14,19 +14,19 @@
, python3
, lua
, opencc
-, libsoup
+, libsoup_3
, json-glib
}:
stdenv.mkDerivation rec {
pname = "ibus-libpinyin";
- version = "1.15.3";
+ version = "1.15.6";
src = fetchFromGitHub {
owner = "libpinyin";
repo = "ibus-libpinyin";
rev = version;
- hash = "sha256-6M4tgIpMQul3R8xI29vyPIWX0n6YItZhdVA8vT9FIRw=";
+ hash = "sha256-cfV/VBCVtwI4qDwuU2563jMjxQqDs7VXGxkFn4w8IqM=";
};
nativeBuildInputs = [
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
db
lua
opencc
- libsoup
+ libsoup_3
json-glib
];
diff --git a/pkgs/tools/misc/fastfetch/default.nix b/pkgs/tools/misc/fastfetch/default.nix
index 53be29dcfa3c..c8658994706a 100644
--- a/pkgs/tools/misc/fastfetch/default.nix
+++ b/pkgs/tools/misc/fastfetch/default.nix
@@ -3,6 +3,7 @@
, fetchFromGitHub
, chafa
, cmake
+, darwin
, dbus
, dconf
, ddcutil
@@ -27,29 +28,17 @@
, xfce
, yyjson
, zlib
-, Apple80211
-, AppKit
-, Cocoa
-, CoreDisplay
-, CoreVideo
-, CoreWLAN
-, DisplayServices
-, Foundation
-, IOBluetooth
-, MediaRemote
-, OpenCL
-, moltenvk
}:
stdenv.mkDerivation (finalAttrs: {
pname = "fastfetch";
- version = "2.3.4";
+ version = "2.4.0";
src = fetchFromGitHub {
owner = "fastfetch-cli";
repo = "fastfetch";
rev = finalAttrs.version;
- hash = "sha256-jZeecymhjbXYE05zRF2dWHBS3hhRm1BmLB906YAlp+A=";
+ hash = "sha256-LHRbobgBXGjoLQXC+Gy03aNrTyjn1loVMbj0qv3HObQ=";
};
nativeBuildInputs = [
@@ -83,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: {
xfce.xfconf
zlib
]
- ++ lib.optionals stdenv.isDarwin [
+ ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk_11_0.frameworks; [
Apple80211
AppKit
Cocoa
@@ -91,12 +80,12 @@ stdenv.mkDerivation (finalAttrs: {
CoreVideo
CoreWLAN
DisplayServices
- Foundation
IOBluetooth
MediaRemote
OpenCL
- moltenvk
- ];
+ SystemConfiguration
+ darwin.moltenvk
+ ]);
cmakeFlags = [
"-DCMAKE_INSTALL_SYSCONFDIR=${placeholder "out"}/etc"
diff --git a/pkgs/tools/misc/fselect/default.nix b/pkgs/tools/misc/fselect/default.nix
index 401de87d64fd..feeb9f3a3d21 100644
--- a/pkgs/tools/misc/fselect/default.nix
+++ b/pkgs/tools/misc/fselect/default.nix
@@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "fselect";
- version = "0.8.4";
+ version = "0.8.5";
src = fetchFromGitHub {
owner = "jhspetersson";
repo = "fselect";
rev = version;
- sha256 = "sha256-XCm4gWPuza+LxK6fnDq5wAn3GGC3njtWxWng+FXIwOs=";
+ sha256 = "sha256-gEiKv1YbNNWexNfzUULbe0fT0ueJ9TJojhBHp31i6OY=";
};
- cargoHash = "sha256-XGjXeA2tRJhFbADtrPR11JgmrQI8mK3Rp+ZSIY62H9s=";
+ cargoHash = "sha256-eqzqIyQHHklxo3aojCvY06TUPSqChoz6yZ2zzpgRNqs=";
nativeBuildInputs = [ installShellFiles ];
buildInputs = lib.optional stdenv.isDarwin libiconv;
diff --git a/pkgs/tools/networking/hysteria/default.nix b/pkgs/tools/networking/hysteria/default.nix
index dd088b1ec539..017851c35237 100644
--- a/pkgs/tools/networking/hysteria/default.nix
+++ b/pkgs/tools/networking/hysteria/default.nix
@@ -4,23 +4,26 @@
}:
buildGoModule rec {
pname = "hysteria";
- version = "2.2.2";
+ version = "2.2.3";
src = fetchFromGitHub {
owner = "apernet";
repo = pname;
rev = "app/v${version}";
- hash = "sha256-5j24wIZ4LloE9t0sv5p+oiYmexOaORASNN9JylXxrk4=";
+ hash = "sha256-xvnshGDQ69yXZ5BnEYAhoJOXG0uZ0lZRnp/rdnmNAkE=";
};
- vendorHash = "sha256-ErU1yEtSuMVkoJv9hyaE4OZS5o7GxuleoK0Q9BI2skw=";
+ vendorHash = "sha256-zjj5MhCVQbsLwZs7LcGhozXGmfzFrDipNsEswiseMYI=";
proxyVendor = true;
- ldflags = [
- "-s"
- "-w"
- "-X main.appVersion=${version}"
- ];
+ ldflags =
+ let cmd = "github.com/apernet/hysteria/app/cmd";
+ in [
+ "-s"
+ "-w"
+ "-X ${cmd}.appVersion=${version}"
+ "-X ${cmd}.appType=release"
+ ];
postInstall = ''
mv $out/bin/app $out/bin/hysteria
@@ -33,7 +36,7 @@ buildGoModule rec {
description = "A feature-packed proxy & relay utility optimized for lossy, unstable connections";
homepage = "https://github.com/apernet/hysteria";
license = licenses.mit;
- platforms = platforms.linux;
+ platforms = platforms.unix;
maintainers = with maintainers; [ oluceps ];
};
}
diff --git a/pkgs/tools/security/sedutil/default.nix b/pkgs/tools/security/sedutil/default.nix
index cb0e367fa2cc..0e83472da0e7 100644
--- a/pkgs/tools/security/sedutil/default.nix
+++ b/pkgs/tools/security/sedutil/default.nix
@@ -1,6 +1,7 @@
{ lib
, stdenv
, fetchFromGitHub
+, fetchpatch
, autoreconfHook
}:
@@ -15,6 +16,16 @@ stdenv.mkDerivation rec {
sha256 = "sha256-NG/7aqe48ShHWW5hW8axYWV4+zX0dBE7Wy9q58l0S3E=";
};
+ patches = [
+ # Fix for gcc-13 pending upstream inclusion:
+ # https://github.com/Drive-Trust-Alliance/sedutil/pull/425
+ (fetchpatch {
+ name = "gcc-13.patch";
+ url = "https://github.com/Drive-Trust-Alliance/sedutil/commit/927cd88cad7bea94c2eebecc18f7881f0defaccb.patch";
+ hash = "sha256-/Lvn3CQd7pzNhLa7sQY8VwbyJK/jEM5FzLijTQnzXx8=";
+ })
+ ];
+
postPatch = ''
patchShebangs .
'';
diff --git a/pkgs/tools/system/zram-generator/Cargo.lock b/pkgs/tools/system/zram-generator/Cargo.lock
index 68ccd9d23b5f..d8d9dc123bb5 100644
--- a/pkgs/tools/system/zram-generator/Cargo.lock
+++ b/pkgs/tools/system/zram-generator/Cargo.lock
@@ -10,9 +10,9 @@ checksum = "0453232ace82dee0dd0b4c87a59bd90f7b53b314f3e0f61fe2ee7c8a16482289"
[[package]]
name = "anyhow"
-version = "1.0.75"
+version = "1.0.78"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
+checksum = "ca87830a3e3fb156dc96cfbd31cb620265dd053be734723f22b760d6cc3c3051"
[[package]]
name = "autocfg"
@@ -84,7 +84,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
dependencies = [
"libc",
- "windows-sys 0.52.0",
+ "windows-sys",
]
[[package]]
@@ -127,9 +127,9 @@ dependencies = [
[[package]]
name = "libc"
-version = "0.2.150"
+version = "0.2.151"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c"
+checksum = "302d7ab3130588088d277783b1e2d2e10c9e9e4a16dd9050e6ec93fb3e7048f4"
[[package]]
name = "liboverdrop"
@@ -192,9 +192,9 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
[[package]]
name = "proc-macro2"
-version = "1.0.70"
+version = "1.0.72"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b"
+checksum = "a293318316cf6478ec1ad2a21c49390a8d5b5eae9fab736467d93fbc0edc29c5"
dependencies = [
"unicode-ident",
]
@@ -267,7 +267,7 @@ dependencies = [
"errno",
"libc",
"linux-raw-sys",
- "windows-sys 0.52.0",
+ "windows-sys",
]
[[package]]
@@ -283,15 +283,15 @@ dependencies = [
[[package]]
name = "tempfile"
-version = "3.8.1"
+version = "3.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
+checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa"
dependencies = [
"cfg-if",
"fastrand",
"redox_syscall",
"rustix",
- "windows-sys 0.48.0",
+ "windows-sys",
]
[[package]]
@@ -321,37 +321,13 @@ version = "0.11.0+wasi-snapshot-preview1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
-[[package]]
-name = "windows-sys"
-version = "0.48.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
-dependencies = [
- "windows-targets 0.48.5",
-]
-
[[package]]
name = "windows-sys"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
dependencies = [
- "windows-targets 0.52.0",
-]
-
-[[package]]
-name = "windows-targets"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
-dependencies = [
- "windows_aarch64_gnullvm 0.48.5",
- "windows_aarch64_msvc 0.48.5",
- "windows_i686_gnu 0.48.5",
- "windows_i686_msvc 0.48.5",
- "windows_x86_64_gnu 0.48.5",
- "windows_x86_64_gnullvm 0.48.5",
- "windows_x86_64_msvc 0.48.5",
+ "windows-targets",
]
[[package]]
@@ -360,93 +336,51 @@ version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
dependencies = [
- "windows_aarch64_gnullvm 0.52.0",
- "windows_aarch64_msvc 0.52.0",
- "windows_i686_gnu 0.52.0",
- "windows_i686_msvc 0.52.0",
- "windows_x86_64_gnu 0.52.0",
- "windows_x86_64_gnullvm 0.52.0",
- "windows_x86_64_msvc 0.52.0",
+ "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_gnullvm"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
-
[[package]]
name = "windows_aarch64_msvc"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
-[[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_gnu"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
-[[package]]
-name = "windows_i686_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
-
[[package]]
name = "windows_i686_msvc"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
-[[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_gnu"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
-[[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_gnullvm"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
-
[[package]]
name = "windows_x86_64_msvc"
version = "0.52.0"
diff --git a/pkgs/tools/text/mdbook-admonish/default.nix b/pkgs/tools/text/mdbook-admonish/default.nix
index 1a99d4216329..1fc72d16c3ce 100644
--- a/pkgs/tools/text/mdbook-admonish/default.nix
+++ b/pkgs/tools/text/mdbook-admonish/default.nix
@@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "mdbook-admonish";
- version = "1.14.0";
+ version = "1.15.0";
src = fetchFromGitHub {
owner = "tommilligan";
repo = pname;
rev = "v${version}";
- hash = "sha256-M9qHiUIrah4gjxGzaD5tWBa54+ajWpS/dW0whC9YRyE=";
+ hash = "sha256-31lYwvlpjeg0ZysusMY/PClEPB1tgroE9EvL4yX+2s0=";
};
- cargoHash = "sha256-SD8aEVgpadpCu2Ex1ugDbJyHpNO3jGeSF7O0eJ4oc3c=";
+ cargoHash = "sha256-Cqxgwf121waOsXUGqQJ+GgUqVWK+5kYUl8SL8MtuExs=";
buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ];
diff --git a/pkgs/tools/text/mdbook-pagetoc/default.nix b/pkgs/tools/text/mdbook-pagetoc/default.nix
index 74e88c8ef358..5e9738c1c140 100644
--- a/pkgs/tools/text/mdbook-pagetoc/default.nix
+++ b/pkgs/tools/text/mdbook-pagetoc/default.nix
@@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "mdbook-pagetoc";
- version = "0.1.7";
+ version = "0.1.8";
src = fetchFromGitHub {
owner = "slowsage";
repo = pname;
rev = "v${version}";
- hash = "sha256-rhg/QDdO44Qwb/z1tQEYK5DcGuUI6cQvpHTYmqYyoWY=";
+ hash = "sha256-yFgzgppGX3moLt7X4Xa6Cqs7v5OYJMjXKTV0sqRFL3o=";
};
- cargoHash = "sha256-03/bLFbP+BSfRW6wyg7LnryDP0kqvfvYqrFBKFZ2xY8=";
+ cargoHash = "sha256-U5KNkUXqCU3cVYOqap19aYpaTyY91kGaGxcW8oxsUxI=";
meta = with lib; {
description = "Table of contents for mdbook (in sidebar)";
diff --git a/pkgs/tools/text/repgrep/default.nix b/pkgs/tools/text/repgrep/default.nix
index cefc0fba0349..607aa230569b 100644
--- a/pkgs/tools/text/repgrep/default.nix
+++ b/pkgs/tools/text/repgrep/default.nix
@@ -1,4 +1,5 @@
{ lib
+, stdenv
, rustPlatform
, fetchFromGitHub
, asciidoctor
@@ -9,16 +10,16 @@
rustPlatform.buildRustPackage rec {
pname = "repgrep";
- version = "0.14.3";
+ version = "0.15.0";
src = fetchFromGitHub {
owner = "acheronfail";
repo = "repgrep";
rev = version;
- hash = "sha256-33b0dZJY/lnVJGMfAg/faD6PPJIFZsvMZOmKAqCZw8k=";
+ hash = "sha256-6ba7EJUts0Ni9EA3ENlK+a2FaPo7JohtCyqwR9DdL1E=";
};
- cargoHash = "sha256-UMMTdWJ0/M8lN4abTJEVUGtoNp/g49DyW+OASg3TKfg=";
+ cargoHash = "sha256-XEjKTZ3qaiLWbm2wF+V97u9tGXDq/oTm249ubUE9n94=";
nativeBuildInputs = [
asciidoctor
@@ -32,8 +33,13 @@ rustPlatform.buildRustPackage rec {
pushd "$(dirname "$(find -path '**/repgrep-stamp' | head -n 1)")"
installManPage rgr.1
- installShellCompletion rgr.{bash,fish} _rgr
popd
+ '' + lib.optionalString (stdenv.hostPlatform.canExecute stdenv.buildPlatform) ''
+ # As it can be seen here: https://github.com/acheronfail/repgrep/blob/0.15.0/.github/workflows/release.yml#L206, the completions are just the same as ripgrep
+ installShellCompletion --cmd rgr \
+ --bash <(${lib.getExe ripgrep} --generate complete-bash | sed 's/-c rg/-c rgr/') \
+ --zsh <(${lib.getExe ripgrep} --generate complete-zsh | sed 's/-c rg/-c rgr/') \
+ --fish <(${lib.getExe ripgrep} --generate complete-fish | sed 's/-c rg/-c rgr/')
'';
meta = with lib; {
diff --git a/pkgs/tools/text/ripgrep/default.nix b/pkgs/tools/text/ripgrep/default.nix
index 5c8427679c82..af42afde1158 100644
--- a/pkgs/tools/text/ripgrep/default.nix
+++ b/pkgs/tools/text/ripgrep/default.nix
@@ -7,10 +7,12 @@
, Security
, withPCRE2 ? true
, pcre2
-, enableManpages ? stdenv.hostPlatform.emulatorAvailable buildPackages
}:
-rustPlatform.buildRustPackage rec {
+let
+ canRunRg = stdenv.hostPlatform.emulatorAvailable buildPackages;
+ rg = "${stdenv.hostPlatform.emulator buildPackages} $out/bin/rg";
+in rustPlatform.buildRustPackage rec {
pname = "ripgrep";
version = "14.0.3";
@@ -30,24 +32,24 @@ rustPlatform.buildRustPackage rec {
buildFeatures = lib.optional withPCRE2 "pcre2";
- preFixup = lib.optionalString enableManpages ''
- ${stdenv.hostPlatform.emulator buildPackages} $out/bin/rg --generate man > rg.1
+ preFixup = lib.optionalString canRunRg ''
+ ${rg} --generate man > rg.1
installManPage rg.1
- '' + ''
+
installShellCompletion --cmd rg \
- --bash <($out/bin/rg --generate complete-bash) \
- --fish <($out/bin/rg --generate complete-fish) \
- --zsh <($out/bin/rg --generate complete-zsh)
+ --bash <(${rg} --generate complete-bash) \
+ --fish <(${rg} --generate complete-fish) \
+ --zsh <(${rg} --generate complete-zsh)
'';
doInstallCheck = true;
installCheckPhase = ''
file="$(mktemp)"
echo "abc\nbcd\ncde" > "$file"
- $out/bin/rg -N 'bcd' "$file"
- $out/bin/rg -N 'cd' "$file"
+ ${rg} -N 'bcd' "$file"
+ ${rg} -N 'cd' "$file"
'' + lib.optionalString withPCRE2 ''
- echo '(a(aa)aa)' | $out/bin/rg -P '\((a*|(?R))*\)'
+ echo '(a(aa)aa)' | ${rg} -P '\((a*|(?R))*\)'
'';
meta = with lib; {
diff --git a/pkgs/tools/wayland/wleave/default.nix b/pkgs/tools/wayland/wleave/default.nix
index 74d1c0b3bc58..3c36b8b34d81 100644
--- a/pkgs/tools/wayland/wleave/default.nix
+++ b/pkgs/tools/wayland/wleave/default.nix
@@ -12,16 +12,16 @@
rustPlatform.buildRustPackage rec {
pname = "wleave";
- version = "0.3.0";
+ version = "0.3.1";
src = fetchFromGitHub {
owner = "AMNatty";
repo = "wleave";
rev = version;
- hash = "sha256-qo9HnaWYsNZH1J8lAyKSwAOyvlCvIsh9maioatjtGkg=";
+ hash = "sha256-CVngGK2gSqar4rnUzgTH/aDE34La5PjSocN/h1oxoVA=";
};
- cargoHash = "sha256-6Gppf1upWoMi+gcRSeQ1txSglAaBbpOXKs2LoJhslPQ=";
+ cargoHash = "sha256-wVDNJSxNzx9gMp2tMx9bMwWGKcEybEixVom4SUJZPgU=";
nativeBuildInputs = [
pkg-config
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 2c55ed548394..e1770e1f4a4d 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1804,12 +1804,8 @@ with pkgs;
etlegacy = callPackage ../games/etlegacy { lua = lua5_4; };
- fastfetch = darwin.apple_sdk_11_0.callPackage ../tools/misc/fastfetch {
- inherit (darwin.apple_sdk_11_0.frameworks)
- AppKit Apple80211 Cocoa CoreDisplay CoreVideo CoreWLAN DisplayServices
- Foundation IOBluetooth MediaRemote OpenCL;
-
- inherit (darwin) moltenvk;
+ fastfetch = callPackage ../tools/misc/fastfetch {
+ stdenv = if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv;
};
fscan = callPackage ../tools/security/fscan { };
@@ -3089,8 +3085,6 @@ with pkgs;
mrxvt = callPackage ../applications/terminal-emulators/mrxvt { };
- roxterm = callPackage ../applications/terminal-emulators/roxterm { };
-
rxvt = callPackage ../applications/terminal-emulators/rxvt { };
rxvt-unicode = callPackage ../applications/terminal-emulators/rxvt-unicode/wrapper.nix { };
@@ -28961,7 +28955,7 @@ with pkgs;
upscayl = callPackage ../applications/graphics/upscayl { };
- usbguard = disable-warnings-if-gcc13 (callPackage ../os-specific/linux/usbguard { });
+ usbguard = callPackage ../os-specific/linux/usbguard { };
usbguard-notifier = callPackage ../os-specific/linux/usbguard-notifier { };
@@ -31354,9 +31348,7 @@ with pkgs;
electrum-ltc = libsForQt5.callPackage ../applications/misc/electrum/ltc.nix { };
- elf-dissector = libsForQt5.callPackage ../applications/misc/elf-dissector {
- libdwarf = libdwarf_20210528;
- };
+ elf-dissector = libsForQt5.callPackage ../applications/misc/elf-dissector { };
elfx86exts = callPackage ../applications/misc/elfx86exts { };
@@ -34083,8 +34075,6 @@ with pkgs;
nwg-wrapper = callPackage ../applications/misc/nwg-wrapper { };
- ocenaudio = callPackage ../applications/audio/ocenaudio { };
-
ocm = callPackage ../applications/networking/cluster/ocm { };
odo = callPackage ../applications/networking/cluster/odo { };