summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2023-09-10 18:01:20 +0000
committerGitHub <noreply@github.com>2023-09-10 18:01:20 +0000
commit9c91f8313b086b695668988b92283f1d05759329 (patch)
treefa869fd373883a50603482872fd500d8e545972f /pkgs
parentae34298aaa5c6a2d10f1f9bd7e7c981f409c4930 (diff)
parent72404a8fe86a2ccf73b0d920ec5e8fc675b0017d (diff)
downloadnixpkgs-9c91f8313b086b695668988b92283f1d05759329.tar
nixpkgs-9c91f8313b086b695668988b92283f1d05759329.tar.gz
nixpkgs-9c91f8313b086b695668988b92283f1d05759329.tar.bz2
nixpkgs-9c91f8313b086b695668988b92283f1d05759329.tar.lz
nixpkgs-9c91f8313b086b695668988b92283f1d05759329.tar.xz
nixpkgs-9c91f8313b086b695668988b92283f1d05759329.tar.zst
nixpkgs-9c91f8313b086b695668988b92283f1d05759329.zip
Merge staging-next into staging
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/graphics/drawio/default.nix2
-rw-r--r--pkgs/applications/misc/kuro/default.nix2
-rw-r--r--pkgs/applications/misc/nwg-look/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix20
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/default.nix5
-rw-r--r--pkgs/applications/version-management/forgejo/default.nix4
-rw-r--r--pkgs/applications/virtualization/podman-desktop/default.nix2
-rw-r--r--pkgs/applications/window-managers/windowmaker/default.nix43
-rw-r--r--pkgs/by-name/bo/bochs/package.nix (renamed from pkgs/applications/emulators/bochs/default.nix)16
-rw-r--r--pkgs/by-name/wi/windowmaker/dockapps/AlsaMixer-app.nix (renamed from pkgs/applications/window-managers/windowmaker/dockapps/AlsaMixer-app.nix)0
-rw-r--r--pkgs/by-name/wi/windowmaker/dockapps/default.nix (renamed from pkgs/applications/window-managers/windowmaker/dockapps/default.nix)0
-rw-r--r--pkgs/by-name/wi/windowmaker/dockapps/libdockapp.nix (renamed from pkgs/applications/window-managers/windowmaker/dockapps/libdockapp.nix)0
-rw-r--r--pkgs/by-name/wi/windowmaker/dockapps/wmCalClock.nix (renamed from pkgs/applications/window-managers/windowmaker/dockapps/wmCalClock.nix)0
-rw-r--r--pkgs/by-name/wi/windowmaker/dockapps/wmsm-app.nix (renamed from pkgs/applications/window-managers/windowmaker/dockapps/wmsm-app.nix)0
-rw-r--r--pkgs/by-name/wi/windowmaker/dockapps/wmsystemtray.nix (renamed from pkgs/applications/window-managers/windowmaker/dockapps/wmsystemtray.nix)0
-rw-r--r--pkgs/by-name/wi/windowmaker/package.nix82
-rw-r--r--pkgs/desktops/expidus/file-manager/default.nix10
-rw-r--r--pkgs/desktops/expidus/file-manager/deps.json82
-rw-r--r--pkgs/development/compilers/rust/1_72.nix2
-rw-r--r--pkgs/development/compilers/rust/cargo_cross.nix14
-rw-r--r--pkgs/development/compilers/rust/default.nix14
-rw-r--r--pkgs/development/compilers/rust/rustc.nix44
-rw-r--r--pkgs/development/libraries/open62541/default.nix4
-rw-r--r--pkgs/development/libraries/wfa2-lib/default.nix37
-rw-r--r--pkgs/development/python-modules/dvc-data/default.nix4
-rw-r--r--pkgs/development/python-modules/geventhttpclient/default.nix9
-rw-r--r--pkgs/development/python-modules/greeneye-monitor/default.nix15
-rw-r--r--pkgs/development/python-modules/locationsharinglib/default.nix4
-rw-r--r--pkgs/development/python-modules/mutagen/default.nix19
-rw-r--r--pkgs/development/python-modules/nats-py/default.nix21
-rw-r--r--pkgs/development/python-modules/onnx/default.nix4
-rw-r--r--pkgs/development/python-modules/pypoint/default.nix4
-rw-r--r--pkgs/development/python-modules/python-homewizard-energy/default.nix14
-rw-r--r--pkgs/development/python-modules/python-telegram-bot/default.nix4
-rw-r--r--pkgs/development/python-modules/python-yate/default.nix41
-rw-r--r--pkgs/development/python-modules/pytrafikverket/default.nix4
-rw-r--r--pkgs/development/python-modules/twilio/default.nix4
-rw-r--r--pkgs/development/tools/electron-fiddle/default.nix2
-rw-r--r--pkgs/development/tools/electron/binary/generic.nix17
-rw-r--r--pkgs/development/tools/redisinsight/default.nix2
-rw-r--r--pkgs/development/tools/rust/cargo-zigbuild/default.nix6
-rw-r--r--pkgs/os-specific/linux/fw-ectool/default.nix41
-rw-r--r--pkgs/os-specific/linux/kernel/linux-6.5.nix2
-rw-r--r--pkgs/os-specific/linux/nixos-rebuild/default.nix4
-rw-r--r--pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.810
-rwxr-xr-xpkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh87
-rw-r--r--pkgs/os-specific/linux/pam_mount/default.nix6
-rw-r--r--pkgs/servers/matrix-synapse/plugins/s3-storage-provider.nix41
-rw-r--r--pkgs/servers/nosql/influxdb2/default.nix31
-rw-r--r--pkgs/servers/nosql/influxdb2/no-deny-warnings.patch10
-rw-r--r--pkgs/tools/graphics/maskromtool/default.nix4
-rw-r--r--pkgs/tools/networking/qcal/default.nix6
-rw-r--r--pkgs/tools/networking/qcard/default.nix38
-rw-r--r--pkgs/tools/security/bitwarden/default.nix2
-rw-r--r--pkgs/tools/security/pwgen/default.nix1
-rw-r--r--pkgs/top-level/all-packages.nix14
-rw-r--r--pkgs/top-level/python-packages.nix2
-rw-r--r--pkgs/top-level/ruby-packages.nix179
58 files changed, 720 insertions, 317 deletions
diff --git a/pkgs/applications/graphics/drawio/default.nix b/pkgs/applications/graphics/drawio/default.nix
index 94ed3d87ba8..9c69a4bebff 100644
--- a/pkgs/applications/graphics/drawio/default.nix
+++ b/pkgs/applications/graphics/drawio/default.nix
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
 
     yarn --offline run electron-builder --dir \
       --config electron-builder-linux-mac.json \
-      -c.electronDist=${electron}/lib/electron \
+      -c.electronDist=${electron}/libexec/electron \
       -c.electronVersion=${electron.version}
 
     runHook postBuild
diff --git a/pkgs/applications/misc/kuro/default.nix b/pkgs/applications/misc/kuro/default.nix
index 26c8d6bbf11..50a773b5c51 100644
--- a/pkgs/applications/misc/kuro/default.nix
+++ b/pkgs/applications/misc/kuro/default.nix
@@ -38,7 +38,7 @@ mkYarnPackage rec {
 
     yarn --offline run electron-builder \
       --dir \
-      -c.electronDist=${electron}/lib/electron \
+      -c.electronDist=${electron}/libexec/electron \
       -c.electronVersion=${electron.version}
 
     popd
diff --git a/pkgs/applications/misc/nwg-look/default.nix b/pkgs/applications/misc/nwg-look/default.nix
index 21b5a7a8332..864e94d4e07 100644
--- a/pkgs/applications/misc/nwg-look/default.nix
+++ b/pkgs/applications/misc/nwg-look/default.nix
@@ -19,7 +19,7 @@ buildGoModule rec {
 
   src = fetchFromGitHub {
     owner = "nwg-piotr";
-    repo = pname;
+    repo = "nwg-look";
     rev = "v${version}";
     hash = "sha256-wUI58qYkVYgES87HQ4octciDlOJ10oJldbUkFgxRUd4=";
   };
diff --git a/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix b/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix
index ec318aa3e18..5fa07ea7a92 100644
--- a/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix
@@ -8,22 +8,24 @@
 , nodejs
 , fetchYarnDeps
 , fixup_yarn_lock
-, electron
+, electron_24
 , libpulseaudio
 , pipewire
 , alsa-utils
 , which
+, testers
+, teams-for-linux
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "teams-for-linux";
-  version = "1.3.2";
+  version = "1.3.8";
 
   src = fetchFromGitHub {
     owner = "IsmaelMartinez";
     repo = "teams-for-linux";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-2WoTbkRGH9l6cQrveyxGvO/Dy+0NV4UTDaooYn8k06s=";
+    hash = "sha256-G0UBzSXoZPLHBsM0nslPLNBZs0sUAQYJ403nPV+3Qu4=";
   };
 
   offlineCache = fetchYarnDeps {
@@ -50,8 +52,8 @@ stdenv.mkDerivation (finalAttrs: {
 
     yarn --offline electron-builder \
       --dir ${if stdenv.isDarwin then "--macos" else "--linux"} ${if stdenv.hostPlatform.isAarch64 then "--arm64" else "--x64"} \
-      -c.electronDist=${electron}/lib/electron \
-      -c.electronVersion=${electron.version}
+      -c.electronDist=${electron_24}/libexec/electron \
+      -c.electronVersion=${electron_24.version}
 
     runHook postBuild
   '';
@@ -70,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: {
     popd
 
     # Linux needs 'aplay' for notification sounds, 'libpulse' for meeting sound, and 'libpipewire' for screen sharing
-    makeWrapper '${electron}/bin/electron' "$out/bin/teams-for-linux" \
+    makeWrapper '${electron_24}/bin/electron' "$out/bin/teams-for-linux" \
       ${lib.optionalString stdenv.isLinux ''
         --prefix PATH : ${lib.makeBinPath [ alsa-utils which ]} \
         --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libpulseaudio pipewire ]} \
@@ -91,12 +93,16 @@ stdenv.mkDerivation (finalAttrs: {
   })];
 
   passthru.updateScript = ./update.sh;
+  passthru.tests.version = testers.testVersion rec {
+    package = teams-for-linux;
+    command = "HOME=$TMPDIR ${package.meta.mainProgram or package.pname} --version";
+  };
 
   meta = {
     description = "Unofficial Microsoft Teams client for Linux";
     homepage = "https://github.com/IsmaelMartinez/teams-for-linux";
     license = lib.licenses.gpl3Only;
-    maintainers = with lib.maintainers; [ muscaln lilyinstarlight ];
+    maintainers = with lib.maintainers; [ muscaln lilyinstarlight qjoly ];
     platforms = lib.platforms.unix;
     broken = stdenv.isDarwin;
   };
diff --git a/pkgs/applications/networking/mailreaders/mutt/default.nix b/pkgs/applications/networking/mailreaders/mutt/default.nix
index 81e6986fc5d..6674e957cb5 100644
--- a/pkgs/applications/networking/mailreaders/mutt/default.nix
+++ b/pkgs/applications/networking/mailreaders/mutt/default.nix
@@ -23,12 +23,12 @@ assert gpgmeSupport -> sslSupport;
 
 stdenv.mkDerivation rec {
   pname = "mutt";
-  version = "2.2.11";
+  version = "2.2.12";
   outputs = [ "out" "doc" "info" ];
 
   src = fetchurl {
     url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
-    hash = "sha256-EjJc9m1f+KxL2H+sjbUshp3lLdJ4/DAc/VfVofn0Zcw=";
+    hash = "sha256-BDrzEvZLjlb3/Qv3f4SiBdTEmAML2VhkV2ZcR7sYzjg=";
   };
 
   patches = [
@@ -103,6 +103,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A small but very powerful text-based mail client";
     homepage = "http://www.mutt.org";
+    mainProgram = "mutt";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ rnhmjoj ];
diff --git a/pkgs/applications/version-management/forgejo/default.nix b/pkgs/applications/version-management/forgejo/default.nix
index 61c608da48c..e1d1c6638c0 100644
--- a/pkgs/applications/version-management/forgejo/default.nix
+++ b/pkgs/applications/version-management/forgejo/default.nix
@@ -39,14 +39,14 @@ let
 in
 buildGoModule rec {
   pname = "forgejo";
-  version = "1.20.3-0";
+  version = "1.20.4-0";
 
   src = fetchFromGitea {
     domain = "codeberg.org";
     owner = "forgejo";
     repo = "forgejo";
     rev = "v${version}";
-    hash = "sha256-pMmP9JJHbaqkHHgtZf2ZgEtXsX97EV0VXiTPT7Lf4P8=";
+    hash = "sha256-guKU3VG1Wyhr5p6w0asL/CopQ5b7HiNi26Tw8WCEpwE=";
   };
 
   vendorHash = "sha256-dgtZjsLBwblhdge3BvdbK/mN/TeZKps9K5dJbqomtjo=";
diff --git a/pkgs/applications/virtualization/podman-desktop/default.nix b/pkgs/applications/virtualization/podman-desktop/default.nix
index 30dd54ba85c..412db059eac 100644
--- a/pkgs/applications/virtualization/podman-desktop/default.nix
+++ b/pkgs/applications/virtualization/podman-desktop/default.nix
@@ -73,7 +73,7 @@ stdenv.mkDerivation (finalAttrs: {
     yarn --offline run build
     yarn --offline run electron-builder --dir \
       --config .electron-builder.config.cjs \
-      -c.electronDist=${electron}/lib/electron \
+      -c.electronDist=${electron}/libexec/electron \
       -c.electronVersion=${electron.version}
 
     runHook postBuild
diff --git a/pkgs/applications/window-managers/windowmaker/default.nix b/pkgs/applications/window-managers/windowmaker/default.nix
deleted file mode 100644
index 8c354c616fd..00000000000
--- a/pkgs/applications/window-managers/windowmaker/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib, stdenv, fetchurl, pkg-config
-, libX11, libXext, libXft, libXmu, libXinerama, libXrandr, libXpm
-, imagemagick, libpng, libjpeg, libexif, libtiff, giflib, libwebp }:
-
-stdenv.mkDerivation rec {
-  pname = "windowmaker";
-  version = "0.95.9";
-  srcName = "WindowMaker-${version}";
-
-  src = fetchurl {
-    url = "http://windowmaker.org/pub/source/release/${srcName}.tar.gz";
-    sha256 = "055pqvlkhipyjn7m6bb3fs4zz9rd1ynzl0mmwbhp05ihc3zmh8zj";
-  };
-
-  nativeBuildInputs = [ pkg-config ];
-
-  buildInputs = [ libX11 libXext libXft libXmu libXinerama libXrandr libXpm
-                  imagemagick libpng libjpeg libexif libtiff giflib libwebp ];
-
-  configureFlags = [
-    "--with-x"
-    "--enable-modelock"
-    "--enable-randr"
-    "--enable-webp"
-    "--disable-magick" # Many distros reported imagemagick fails to be found
-  ];
-
-  meta = with lib; {
-    homepage = "http://windowmaker.org/";
-    description = "NeXTSTEP-like window manager";
-    longDescription = ''
-      Window Maker is an X11 window manager originally designed to
-      provide integration support for the GNUstep Desktop
-      Environment. In every way possible, it reproduces the elegant look
-      and feel of the NEXTSTEP user interface. It is fast, feature rich,
-      easy to configure, and easy to use. It is also free software, with
-      contributions being made by programmers from around the world.
-    '';
-    license = licenses.gpl2Plus;
-    platforms = platforms.linux;
-    maintainers = [ maintainers.AndersonTorres ];
-  };
-}
diff --git a/pkgs/applications/emulators/bochs/default.nix b/pkgs/by-name/bo/bochs/package.nix
index edf092028fc..803d6ae2852 100644
--- a/pkgs/applications/emulators/bochs/default.nix
+++ b/pkgs/by-name/bo/bochs/package.nix
@@ -3,6 +3,7 @@
 , fetchurl
 , SDL2
 , curl
+, darwin
 , docbook_xml_dtd_45
 , docbook_xsl
 , gtk3
@@ -10,13 +11,12 @@
 , libGLU
 , libX11
 , libXpm
-, libobjc
 , libtool
 , ncurses
 , pkg-config
 , readline
 , wget
-, wxGTK
+, wxGTK32
 , enableSDL2 ? true
 , enableTerm ? true
 , enableWx ? !stdenv.isDarwin
@@ -49,14 +49,14 @@ stdenv.mkDerivation (finalAttrs: {
     ncurses
   ] ++ lib.optionals enableWx [
     gtk3
-    wxGTK
+    wxGTK32
   ] ++ lib.optionals enableX11 [
     libGL
     libGLU
     libX11
     libXpm
   ] ++ lib.optionals stdenv.isDarwin [
-    libobjc
+    darwin.libobjc
   ];
 
   configureFlags = [
@@ -134,7 +134,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   enableParallelBuilding = true;
 
-  meta = with lib; {
+  meta = {
     homepage = "https://bochs.sourceforge.io/";
     description = "An open-source IA-32 (x86) PC emulator";
     longDescription = ''
@@ -142,9 +142,9 @@ stdenv.mkDerivation (finalAttrs: {
       in C++, that runs on most popular platforms. It includes emulation of the
       Intel x86 CPU, common I/O devices, and a custom BIOS.
     '';
-    license = licenses.lgpl2Plus;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.unix;
+    license = lib.licenses.lgpl2Plus;
+    maintainers = with lib.maintainers; [ AndersonTorres ];
+    platforms = lib.platforms.unix;
   };
 })
 # TODO: a better way to organize the options
diff --git a/pkgs/applications/window-managers/windowmaker/dockapps/AlsaMixer-app.nix b/pkgs/by-name/wi/windowmaker/dockapps/AlsaMixer-app.nix
index e22b02825b7..e22b02825b7 100644
--- a/pkgs/applications/window-managers/windowmaker/dockapps/AlsaMixer-app.nix
+++ b/pkgs/by-name/wi/windowmaker/dockapps/AlsaMixer-app.nix
diff --git a/pkgs/applications/window-managers/windowmaker/dockapps/default.nix b/pkgs/by-name/wi/windowmaker/dockapps/default.nix
index 8a66fdbd67f..8a66fdbd67f 100644
--- a/pkgs/applications/window-managers/windowmaker/dockapps/default.nix
+++ b/pkgs/by-name/wi/windowmaker/dockapps/default.nix
diff --git a/pkgs/applications/window-managers/windowmaker/dockapps/libdockapp.nix b/pkgs/by-name/wi/windowmaker/dockapps/libdockapp.nix
index aaf99ec932e..aaf99ec932e 100644
--- a/pkgs/applications/window-managers/windowmaker/dockapps/libdockapp.nix
+++ b/pkgs/by-name/wi/windowmaker/dockapps/libdockapp.nix
diff --git a/pkgs/applications/window-managers/windowmaker/dockapps/wmCalClock.nix b/pkgs/by-name/wi/windowmaker/dockapps/wmCalClock.nix
index 9f49b4508c1..9f49b4508c1 100644
--- a/pkgs/applications/window-managers/windowmaker/dockapps/wmCalClock.nix
+++ b/pkgs/by-name/wi/windowmaker/dockapps/wmCalClock.nix
diff --git a/pkgs/applications/window-managers/windowmaker/dockapps/wmsm-app.nix b/pkgs/by-name/wi/windowmaker/dockapps/wmsm-app.nix
index 5c68a39a1ea..5c68a39a1ea 100644
--- a/pkgs/applications/window-managers/windowmaker/dockapps/wmsm-app.nix
+++ b/pkgs/by-name/wi/windowmaker/dockapps/wmsm-app.nix
diff --git a/pkgs/applications/window-managers/windowmaker/dockapps/wmsystemtray.nix b/pkgs/by-name/wi/windowmaker/dockapps/wmsystemtray.nix
index ced4cad8055..ced4cad8055 100644
--- a/pkgs/applications/window-managers/windowmaker/dockapps/wmsystemtray.nix
+++ b/pkgs/by-name/wi/windowmaker/dockapps/wmsystemtray.nix
diff --git a/pkgs/by-name/wi/windowmaker/package.nix b/pkgs/by-name/wi/windowmaker/package.nix
new file mode 100644
index 00000000000..2381c16f41a
--- /dev/null
+++ b/pkgs/by-name/wi/windowmaker/package.nix
@@ -0,0 +1,82 @@
+{ lib
+, stdenv
+, fetchFromRepoOrCz
+, autoreconfHook
+, pkg-config
+, imagemagick
+, libX11
+, libXext
+, libXft
+, libXinerama
+, libXmu
+, libXpm
+, libXrandr
+, libXres
+, libexif
+, libjpeg
+, libpng
+, libtiff
+, giflib
+, libwebp
+, pango
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "windowmaker";
+  version = "0.96.0";
+
+  src = fetchFromRepoOrCz {
+    repo = "wmaker-crm";
+    rev = "wmaker-${finalAttrs.version}";
+    hash = "sha256-6DS5KztCNWPQL6/qJ5vlkOup2ourxSNf6LLTFYpPWi8=";
+  };
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+  ];
+
+  buildInputs = [
+    giflib
+    imagemagick
+    libX11
+    libXext
+    libXft
+    libXinerama
+    libXmu
+    libXpm
+    libXrandr
+    libXres
+    libexif
+    libjpeg
+    libpng
+    libtiff
+    libwebp
+    pango
+  ];
+
+  configureFlags = [
+    "--enable-modelock"
+    "--enable-randr"
+    "--enable-webp"
+    "--with-x"
+  ];
+
+  meta = {
+    homepage = "http://windowmaker.org/";
+    description = "NeXTSTEP-like window manager";
+    longDescription = ''
+      Window Maker is an X11 window manager originally designed to provide
+      integration support for the GNUstep Desktop Environment. In every way
+      possible, it reproduces the elegant look and feel of the NEXTSTEP user
+      interface. It is fast, feature rich, easy to configure, and easy to
+      use. It is also free software, with contributions being made by
+      programmers from around the world.
+    '';
+    changelog = "https://www.windowmaker.org/news/";
+    license = lib.licenses.gpl2Plus;
+    mainProgram = "wmaker";
+    maintainers = [ lib.maintainers.AndersonTorres ];
+    platforms = lib.platforms.linux;
+  };
+})
diff --git a/pkgs/desktops/expidus/file-manager/default.nix b/pkgs/desktops/expidus/file-manager/default.nix
index ef6d96e5230..e3c64360495 100644
--- a/pkgs/desktops/expidus/file-manager/default.nix
+++ b/pkgs/desktops/expidus/file-manager/default.nix
@@ -1,17 +1,21 @@
 { lib, flutter, fetchFromGitHub }:
 flutter.buildFlutterApplication rec {
   pname = "expidus-file-manager";
-  version = "0.2.0";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
     owner = "ExpidusOS";
     repo = "file-manager";
     rev = version;
-    hash = "sha256-p/bKVC1LpvVcyI3NYjQ//QL/6UutjVg649IZSmz4w9g=";
+    hash = "sha256-R6eszy4Dz8tAPRTwZzRiZWIgVMiGv5zlhFB/HcD6gqg=";
   };
 
+  flutterBuildFlags = [
+    "--dart-define=COMMIT_HASH=b4181b9cff18a07e958c81d8f41840d2d36a6705"
+  ];
+
   depsListFile = ./deps.json;
-  vendorHash = "sha256-7d8hsqXD7oqUN8VjQczSCyqytubDRq0os8wGnOfdSvs=";
+  vendorHash = "sha256-JFAX8Tq4vhX801WAxMrsc20tsSrwQhQduYCkeU67OTw=";
 
   postInstall = ''
     rm $out/bin/file_manager
diff --git a/pkgs/desktops/expidus/file-manager/deps.json b/pkgs/desktops/expidus/file-manager/deps.json
index fa04b354c06..28df9f28848 100644
--- a/pkgs/desktops/expidus/file-manager/deps.json
+++ b/pkgs/desktops/expidus/file-manager/deps.json
@@ -1,7 +1,7 @@
 [
   {
     "name": "file_manager",
-    "version": "0.2.0+65656565656565",
+    "version": "0.2.1+65656565656565",
     "kind": "root",
     "source": "root",
     "dependencies": [
@@ -38,7 +38,7 @@
   },
   {
     "name": "flutter_lints",
-    "version": "2.0.1",
+    "version": "2.0.2",
     "kind": "dev",
     "source": "hosted",
     "dependencies": [
@@ -301,7 +301,7 @@
   },
   {
     "name": "ffi",
-    "version": "2.0.2",
+    "version": "2.1.0",
     "kind": "direct",
     "source": "hosted",
     "dependencies": []
@@ -319,7 +319,7 @@
   },
   {
     "name": "plugin_platform_interface",
-    "version": "2.1.4",
+    "version": "2.1.5",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -375,7 +375,7 @@
   },
   {
     "name": "flutter_adaptive_scaffold",
-    "version": "0.1.5",
+    "version": "0.1.6",
     "kind": "direct",
     "source": "hosted",
     "dependencies": [
@@ -384,7 +384,7 @@
   },
   {
     "name": "flutter_markdown",
-    "version": "0.6.15",
+    "version": "0.6.17+1",
     "kind": "direct",
     "source": "hosted",
     "dependencies": [
@@ -396,7 +396,7 @@
   },
   {
     "name": "markdown",
-    "version": "7.1.0",
+    "version": "7.1.1",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -493,7 +493,7 @@
   },
   {
     "name": "sentry_flutter",
-    "version": "7.7.0",
+    "version": "7.9.0",
     "kind": "direct",
     "source": "hosted",
     "dependencies": [
@@ -506,7 +506,7 @@
   },
   {
     "name": "sentry",
-    "version": "7.7.0",
+    "version": "7.9.0",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -536,7 +536,7 @@
   },
   {
     "name": "path_provider_platform_interface",
-    "version": "2.0.6",
+    "version": "2.1.0",
     "kind": "direct",
     "source": "hosted",
     "dependencies": [
@@ -554,7 +554,7 @@
   },
   {
     "name": "path_provider_windows",
-    "version": "2.1.7",
+    "version": "2.2.0",
     "kind": "direct",
     "source": "hosted",
     "dependencies": [
@@ -567,7 +567,7 @@
   },
   {
     "name": "permission_handler",
-    "version": "10.3.0",
+    "version": "10.4.3",
     "kind": "direct",
     "source": "hosted",
     "dependencies": [
@@ -581,7 +581,7 @@
   },
   {
     "name": "permission_handler_platform_interface",
-    "version": "3.10.0",
+    "version": "3.11.3",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -592,7 +592,7 @@
   },
   {
     "name": "permission_handler_windows",
-    "version": "0.1.2",
+    "version": "0.1.3",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -602,7 +602,7 @@
   },
   {
     "name": "permission_handler_apple",
-    "version": "9.1.0",
+    "version": "9.1.4",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -612,7 +612,7 @@
   },
   {
     "name": "permission_handler_android",
-    "version": "10.2.3",
+    "version": "10.3.3",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -632,7 +632,7 @@
   },
   {
     "name": "shared_preferences",
-    "version": "2.1.2",
+    "version": "2.2.0",
     "kind": "direct",
     "source": "hosted",
     "dependencies": [
@@ -647,7 +647,7 @@
   },
   {
     "name": "shared_preferences_windows",
-    "version": "2.2.0",
+    "version": "2.3.0",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -661,7 +661,7 @@
   },
   {
     "name": "shared_preferences_platform_interface",
-    "version": "2.2.0",
+    "version": "2.3.0",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -681,7 +681,7 @@
   },
   {
     "name": "shared_preferences_web",
-    "version": "2.1.0",
+    "version": "2.2.0",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -692,7 +692,7 @@
   },
   {
     "name": "shared_preferences_linux",
-    "version": "2.2.0",
+    "version": "2.3.0",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -706,7 +706,7 @@
   },
   {
     "name": "path_provider_linux",
-    "version": "2.1.11",
+    "version": "2.2.0",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -719,29 +719,17 @@
   },
   {
     "name": "xdg_directories",
-    "version": "1.0.0",
+    "version": "1.0.2",
     "kind": "direct",
     "source": "hosted",
     "dependencies": [
       "meta",
-      "path",
-      "process"
-    ]
-  },
-  {
-    "name": "process",
-    "version": "4.2.4",
-    "kind": "transitive",
-    "source": "hosted",
-    "dependencies": [
-      "file",
-      "path",
-      "platform"
+      "path"
     ]
   },
   {
     "name": "shared_preferences_foundation",
-    "version": "2.2.2",
+    "version": "2.3.2",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -751,7 +739,7 @@
   },
   {
     "name": "shared_preferences_android",
-    "version": "2.1.4",
+    "version": "2.2.0",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -860,7 +848,7 @@
   },
   {
     "name": "url_launcher",
-    "version": "6.1.11",
+    "version": "6.1.12",
     "kind": "direct",
     "source": "hosted",
     "dependencies": [
@@ -876,7 +864,7 @@
   },
   {
     "name": "url_launcher_windows",
-    "version": "3.0.6",
+    "version": "3.0.7",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -886,7 +874,7 @@
   },
   {
     "name": "url_launcher_platform_interface",
-    "version": "2.1.2",
+    "version": "2.1.3",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -896,7 +884,7 @@
   },
   {
     "name": "url_launcher_web",
-    "version": "2.0.17",
+    "version": "2.0.18",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -907,7 +895,7 @@
   },
   {
     "name": "url_launcher_macos",
-    "version": "3.0.5",
+    "version": "3.0.6",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -937,7 +925,7 @@
   },
   {
     "name": "url_launcher_android",
-    "version": "6.0.35",
+    "version": "6.0.38",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -947,7 +935,7 @@
   },
   {
     "name": "path_provider",
-    "version": "2.0.15",
+    "version": "2.1.0",
     "kind": "direct",
     "source": "hosted",
     "dependencies": [
@@ -961,7 +949,7 @@
   },
   {
     "name": "path_provider_foundation",
-    "version": "2.2.3",
+    "version": "2.3.0",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
@@ -971,7 +959,7 @@
   },
   {
     "name": "path_provider_android",
-    "version": "2.0.27",
+    "version": "2.1.0",
     "kind": "transitive",
     "source": "hosted",
     "dependencies": [
diff --git a/pkgs/development/compilers/rust/1_72.nix b/pkgs/development/compilers/rust/1_72.nix
index 077d8ac903f..05e55d24a75 100644
--- a/pkgs/development/compilers/rust/1_72.nix
+++ b/pkgs/development/compilers/rust/1_72.nix
@@ -57,4 +57,4 @@ import ./default.nix {
   rustcPatches = [ ];
 }
 
-(builtins.removeAttrs args [ "pkgsBuildTarget" "pkgsBuildBuild" "pkgsBuildHost" "llvmPackages_16" "llvm_16"])
+(builtins.removeAttrs args [ "pkgsBuildTarget" "pkgsBuildHost" "llvmPackages_16" "llvm_16"])
diff --git a/pkgs/development/compilers/rust/cargo_cross.nix b/pkgs/development/compilers/rust/cargo_cross.nix
new file mode 100644
index 00000000000..ba7651e63bd
--- /dev/null
+++ b/pkgs/development/compilers/rust/cargo_cross.nix
@@ -0,0 +1,14 @@
+{ runCommand, stdenv, lib, pkgsBuildBuild, makeShellWrapper, rustc, ... }:
+
+runCommand "${stdenv.targetPlatform.config}-cargo-${lib.getVersion pkgsBuildBuild.cargo}" {
+  # Use depsBuildBuild or it tries to use target-runtimeShell
+  depsBuildBuild = [ makeShellWrapper ];
+
+  inherit (pkgsBuildBuild.cargo) meta;
+} ''
+  mkdir -p $out/bin
+  ln -s ${pkgsBuildBuild.cargo}/share $out/share
+
+  makeWrapper "${pkgsBuildBuild.cargo}/bin/cargo" "$out/bin/cargo" \
+    --prefix PATH : "${rustc}/bin"
+ ''
diff --git a/pkgs/development/compilers/rust/default.nix b/pkgs/development/compilers/rust/default.nix
index 77c8b3d592f..90e921651f1 100644
--- a/pkgs/development/compilers/rust/default.nix
+++ b/pkgs/development/compilers/rust/default.nix
@@ -15,12 +15,15 @@
 , buildPackages
 , newScope, callPackage
 , CoreFoundation, Security, SystemConfiguration
+, pkgsBuildBuild
 , makeRustPlatform
 }:
 
 let
   # Use `import` to make sure no packages sneak in here.
   lib' = import ../../../build-support/rust/lib { inherit lib; };
+  # Allow faster cross compiler generation by reusing Build artifacts
+  fastCross = (stdenv.buildPlatform == stdenv.hostPlatform) && (stdenv.hostPlatform != stdenv.targetPlatform);
 in
 {
   lib = lib';
@@ -48,7 +51,10 @@ in
       # Like `buildRustPackages`, but may also contain prebuilt binaries to
       # break cycle. Just like `bootstrapTools` for nixpkgs as a whole,
       # nothing in the final package set should refer to this.
-      bootstrapRustPackages = self.buildRustPackages.overrideScope (_: _:
+      bootstrapRustPackages = if fastCross
+      then pkgsBuildBuild.rustPackages
+      else
+        self.buildRustPackages.overrideScope (_: _:
         lib.optionalAttrs (stdenv.buildPlatform == stdenv.hostPlatform)
           (selectRustPackage buildPackages).packages.prebuilt);
       bootRustPlatform = makeRustPlatform bootstrapRustPackages;
@@ -61,7 +67,7 @@ in
         version = rustcVersion;
         sha256 = rustcSha256;
         inherit enableRustcDev;
-        inherit llvmShared llvmSharedForBuild llvmSharedForHost llvmSharedForTarget llvmPackages;
+        inherit llvmShared llvmSharedForBuild llvmSharedForHost llvmSharedForTarget llvmPackages fastCross;
 
         patches = rustcPatches;
 
@@ -72,11 +78,11 @@ in
         inherit Security;
         inherit (self.buildRustPackages) rustc;
       };
-      cargo = self.callPackage ./cargo.nix {
+      cargo = if (!fastCross) then self.callPackage ./cargo.nix {
         # Use boot package set to break cycle
         rustPlatform = bootRustPlatform;
         inherit CoreFoundation Security;
-      };
+      } else self.callPackage ./cargo_cross.nix {};
       cargo-auditable = self.callPackage ./cargo-auditable.nix { };
       cargo-auditable-cargo-wrapper = self.callPackage ./cargo-auditable-cargo-wrapper.nix { };
       clippy = self.callPackage ./clippy.nix {
diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix
index 53f7257ecfc..869dd15df0b 100644
--- a/pkgs/development/compilers/rust/rustc.nix
+++ b/pkgs/development/compilers/rust/rustc.nix
@@ -15,6 +15,10 @@
 , wezterm
 , firefox
 , thunderbird
+# This only builds std for target and reuses the rustc from build.
+, fastCross
+, lndir
+, makeWrapper
 }:
 
 let
@@ -87,13 +91,13 @@ in stdenv.mkDerivation rec {
     # (build!=target): When cross-building a compiler we need to add
     # the build platform as well so rustc can compile build.rs
     # scripts.
-    ] ++ optionals (stdenv.buildPlatform != stdenv.targetPlatform) [
+    ] ++ optionals (stdenv.buildPlatform != stdenv.targetPlatform && !fastCross) [
       (rust.toRustTargetSpec stdenv.buildPlatform)
 
     # (host!=target): When building a cross-targeting compiler we
     # need to add the host platform as well so rustc can compile
     # build.rs scripts.
-    ] ++ optionals (stdenv.hostPlatform != stdenv.targetPlatform) [
+    ] ++ optionals (stdenv.hostPlatform != stdenv.targetPlatform && !fastCross) [
       (rust.toRustTargetSpec stdenv.hostPlatform)
     ])}"
 
@@ -132,6 +136,37 @@ in stdenv.mkDerivation rec {
     "--set rust.jemalloc"
   ];
 
+  # if we already have a rust compiler for build just compile the target std
+  # library and reuse compiler
+  buildPhase = if fastCross then "
+    runHook preBuild
+
+    mkdir -p build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-{std,rustc}/${rust.toRustTargetSpec stdenv.hostPlatform}/release/
+    ln -s ${rustc}/lib/rustlib/${rust.toRustTargetSpec stdenv.hostPlatform}/libstd-*.so build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-std/${rust.toRustTargetSpec stdenv.hostPlatform}/release/libstd.so
+    ln -s ${rustc}/lib/rustlib/${rust.toRustTargetSpec stdenv.hostPlatform}/librustc_driver-*.so build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-rustc/${rust.toRustTargetSpec stdenv.hostPlatform}/release/librustc.so
+    ln -s ${rustc}/bin/rustc build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-rustc/${rust.toRustTargetSpec stdenv.hostPlatform}/release/rustc-main
+    touch build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-std/${rust.toRustTargetSpec stdenv.hostPlatform}/release/.libstd.stamp
+    touch build/${rust.toRustTargetSpec stdenv.hostPlatform}/stage0-rustc/${rust.toRustTargetSpec stdenv.hostPlatform}/release/.librustc.stamp
+    python ./x.py --keep-stage=0 --stage=1 build library/std
+
+    runHook postBuild
+  " else null;
+
+  installPhase = if fastCross then ''
+    runHook preInstall
+
+    python ./x.py --keep-stage=0 --stage=1 install library/std
+    mkdir -v $out/bin $doc $man
+    makeWrapper ${rustc}/bin/rustc $out/bin/rustc --add-flags "--sysroot $out"
+    makeWrapper ${rustc}/bin/rustdoc $out/bin/rustdoc --add-flags "--sysroot $out"
+    ln -s ${rustc}/lib/rustlib/{manifest-rust-std-,}${rust.toRustTargetSpec stdenv.hostPlatform} $out/lib/rustlib/
+    echo rust-std-${rust.toRustTargetSpec stdenv.hostPlatform} >> $out/lib/rustlib/components
+    lndir ${rustc.doc} $doc
+    lndir ${rustc.man} $man
+
+    runHook postInstall
+  '' else null;
+
   # The bootstrap.py will generated a Makefile that then executes the build.
   # The BOOTSTRAP_ARGS used by this Makefile must include all flags to pass
   # to the bootstrap builder.
@@ -179,7 +214,8 @@ in stdenv.mkDerivation rec {
   nativeBuildInputs = [
     file python3 rustc cmake
     which libffi removeReferencesTo pkg-config xz
-  ];
+  ]
+    ++ optionals fastCross [ lndir makeWrapper ];
 
   buildInputs = [ openssl ]
     ++ optionals stdenv.isDarwin [ libiconv Security ]
@@ -188,7 +224,7 @@ in stdenv.mkDerivation rec {
   outputs = [ "out" "man" "doc" ];
   setOutputFlags = false;
 
-  postInstall = lib.optionalString enableRustcDev ''
+  postInstall = lib.optionalString (enableRustcDev && !fastCross) ''
     # install rustc-dev components. Necessary to build rls, clippy...
     python x.py dist rustc-dev
     tar xf build/dist/rustc-dev*tar.gz
diff --git a/pkgs/development/libraries/open62541/default.nix b/pkgs/development/libraries/open62541/default.nix
index fb67d66018f..e25ac7bfca5 100644
--- a/pkgs/development/libraries/open62541/default.nix
+++ b/pkgs/development/libraries/open62541/default.nix
@@ -31,13 +31,13 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "open62541";
-  version = "1.3.6";
+  version = "1.3.7";
 
   src = fetchFromGitHub {
     owner = "open62541";
     repo = "open62541";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-cmD01D49pHEHN0QQtE5RXv0YZ/MPIWnubeUY6BH4DrU=";
+    hash = "sha256-XmoLmBGTMA6cejLiNU8hAVnHd35eh6lTIu9csmiR+4U=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/libraries/wfa2-lib/default.nix b/pkgs/development/libraries/wfa2-lib/default.nix
new file mode 100644
index 00000000000..9555b9faea6
--- /dev/null
+++ b/pkgs/development/libraries/wfa2-lib/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, pkg-config
+, llvmPackages
+, enableOpenMP ? true
+}:
+
+stdenv.mkDerivation rec {
+  pname = "wfa2-lib";
+  version = "2.3.3";
+
+  src = fetchFromGitHub {
+    owner = "smarco";
+    repo = "WFA2-lib";
+    rev = "v${version}";
+    hash = "sha256-PLZhxKMBhKm6E/ENFZ/yWMWIwJG5voaJls2in44OGoQ=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
+
+  buildInputs = lib.optionals enableOpenMP [ llvmPackages.openmp ];
+
+  cmakeFlags = [ "-DOPENMP=${if enableOpenMP then "ON" else "OFF"}" ];
+
+  meta = with lib; {
+    description = "Wavefront alignment algorithm library v2";
+    homepage = "https://github.com/smarco/WFA2-lib";
+    license = licenses.mit;
+    maintainers = with maintainers; [ rs0vere ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/python-modules/dvc-data/default.nix b/pkgs/development/python-modules/dvc-data/default.nix
index 09ae0a82d63..65ad409aaee 100644
--- a/pkgs/development/python-modules/dvc-data/default.nix
+++ b/pkgs/development/python-modules/dvc-data/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "dvc-data";
-  version = "2.16.0";
+  version = "2.16.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "iterative";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-pLagCMHxlN26x/zP6tDRchxTwqvRyARKO5EzmuWncUo=";
+    hash = "sha256-hnKOSo/RUzGnj7JbdKOGogVN925LZQiL3uvy5+dQfPw=";
   };
 
   SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/pkgs/development/python-modules/geventhttpclient/default.nix b/pkgs/development/python-modules/geventhttpclient/default.nix
index 21638ce8031..906fcdbdb60 100644
--- a/pkgs/development/python-modules/geventhttpclient/default.nix
+++ b/pkgs/development/python-modules/geventhttpclient/default.nix
@@ -8,19 +8,20 @@
 , pytestCheckHook
 , pythonOlder
 , six
+, stdenv
 , urllib3
 }:
 
 buildPythonPackage rec {
   pname = "geventhttpclient";
-  version = "2.0.8";
+  version = "2.0.10";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-X3gsQZZD90vk0JGMDStjlW723ceiEn8Hy7gDOnWrNm8=";
+    hash = "sha256-t8l7JlEZV6NqiU7FRlHAiJCmnhGLaXVfjnS/w3xjORs=";
   };
 
   propagatedBuildInputs = [
@@ -36,6 +37,9 @@ buildPythonPackage rec {
     urllib3
   ];
 
+  # lots of: [Errno 48] Address already in use: ('127.0.0.1', 54323)
+  doCheck = !stdenv.isDarwin;
+
   __darwinAllowLocalNetworking = true;
 
   disabledTests = [
@@ -56,6 +60,7 @@ buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://github.com/geventhttpclient/geventhttpclient";
     description = "High performance, concurrent HTTP client library using gevent";
+    changelog = "https://github.com/geventhttpclient/geventhttpclient/releases/tag/${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ koral ];
   };
diff --git a/pkgs/development/python-modules/greeneye-monitor/default.nix b/pkgs/development/python-modules/greeneye-monitor/default.nix
index 3efc25274d9..38f9dea7545 100644
--- a/pkgs/development/python-modules/greeneye-monitor/default.nix
+++ b/pkgs/development/python-modules/greeneye-monitor/default.nix
@@ -4,28 +4,27 @@
 , fetchFromGitHub
 , pytestCheckHook
 , pythonOlder
+, setuptools
 , siobrultech-protocols
 }:
 
 buildPythonPackage rec {
   pname = "greeneye-monitor";
-  version = "4.0.1";
+  version = "5.0";
+  format = "pyproject";
 
   disabled = pythonOlder "3.10";
 
-  format = "setuptools";
-
   src = fetchFromGitHub {
     owner = "jkeljo";
     repo = "greeneye-monitor";
     rev = "refs/tags/v${version}";
-    hash = "sha256-S/1MT9ZQ9G0F1WXqzNKhVo8vtfPLzr8WRlfYc7TU9iQ=";
+    hash = "sha256-HU+GWO08caKfQZ0tIDmJYAML4CKUM0CPukm7wD6uSEA=";
   };
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "siobrultech_protocols==" "siobrultech_protocols>="
-  '';
+  nativeBuildInputs = [
+    setuptools
+  ];
 
   propagatedBuildInputs = [
     aiohttp
diff --git a/pkgs/development/python-modules/locationsharinglib/default.nix b/pkgs/development/python-modules/locationsharinglib/default.nix
index 001a0705dab..5f47be17a4d 100644
--- a/pkgs/development/python-modules/locationsharinglib/default.nix
+++ b/pkgs/development/python-modules/locationsharinglib/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "locationsharinglib";
-  version = "5.0.1";
+  version = "5.0.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-KT/q1UIJ/DzGqz8T08MXG9UCstAcpDydM4Tkn33pruI=";
+    hash = "sha256-ydwtcIJ2trQ6xg2r5kU/ogvjdBwUZhYhBdc6nBmSGcg=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/mutagen/default.nix b/pkgs/development/python-modules/mutagen/default.nix
index 705c3583a8c..5843cd9432b 100644
--- a/pkgs/development/python-modules/mutagen/default.nix
+++ b/pkgs/development/python-modules/mutagen/default.nix
@@ -2,7 +2,6 @@
 , buildPythonPackage
 , pythonOlder
 , fetchPypi
-, fetchpatch
 
 # docs
 , python
@@ -16,32 +15,26 @@
 
 buildPythonPackage rec {
   pname = "mutagen";
-  version = "1.46.0";
+  version = "1.47.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-bl+LqEg2uZ/mC+X7J/hL5K2Rm7trScqmroHnBYS1Xlg=";
+    hash = "sha256-cZ+t7wqXjDG0zzyVYmGzxYtpSLMgIweKIRex3gnw/Jk=";
   };
 
-  outputs = [ "out" "doc" ];
+  outputs = [
+    "out"
+    "doc"
+  ];
 
   nativeBuildInputs = [
     sphinx
     sphinx-rtd-theme
   ];
 
-  patches = [
-    (fetchpatch {
-      # docs: Make extlinks compatible with sphinx 6.0
-      # https://github.com/quodlibet/mutagen/pull/590
-      url = "https://github.com/quodlibet/mutagen/commit/37b4e6bddc03e1f715425c418ea84bac15116907.patch";
-      hash = "sha256-CnGfHY4RhRhOLvlRTH/NZwzCnAL3VhU6xosuh6fkqGQ=";
-    })
-  ];
-
   postInstall = ''
     ${python.pythonForBuild.interpreter} setup.py build_sphinx --build-dir=$doc
   '';
diff --git a/pkgs/development/python-modules/nats-py/default.nix b/pkgs/development/python-modules/nats-py/default.nix
index 3f958d05cff..889017f006d 100644
--- a/pkgs/development/python-modules/nats-py/default.nix
+++ b/pkgs/development/python-modules/nats-py/default.nix
@@ -7,13 +7,14 @@
 , nats-server
 , pytestCheckHook
 , pythonOlder
+, setuptools
 , uvloop
 }:
 
 buildPythonPackage rec {
   pname = "nats-py";
-  version = "2.2.0";
-  format = "setuptools";
+  version = "2.3.1";
+  format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
@@ -21,9 +22,18 @@ buildPythonPackage rec {
     owner = "nats-io";
     repo = "nats.py";
     rev = "refs/tags/v${version}";
-    hash = "sha256-w+YySX9RNXUttt7iLg/Efh8bNzmhIQTKMXcoPO1k4lI=";
+    hash = "sha256-vcTkQeaWBsPlPCp53VqI3inH0PkdxkKWDTW/vtrD/xw=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace '"--cov=nats", "--cov-report=html"' ""
+  '';
+
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     aiohttp
     ed25519
@@ -35,11 +45,6 @@ buildPythonPackage rec {
     uvloop
   ];
 
-  postPatch = ''
-    substituteInPlace setup.cfg \
-      --replace "--cov=nats --cov-report html" ""
-  '';
-
   disabledTests = [
     # AssertionError: assert 5 == 0
     "test_pull_subscribe_limits"
diff --git a/pkgs/development/python-modules/onnx/default.nix b/pkgs/development/python-modules/onnx/default.nix
index 52e0984f5aa..0f9b290cc28 100644
--- a/pkgs/development/python-modules/onnx/default.nix
+++ b/pkgs/development/python-modules/onnx/default.nix
@@ -19,7 +19,7 @@ let
   gtestStatic = gtest.override { static = true; };
 in buildPythonPackage rec {
   pname = "onnx";
-  version = "1.14.0";
+  version = "1.14.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -28,7 +28,7 @@ in buildPythonPackage rec {
     owner = pname;
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-f+s25Y/jGosaSdoZY6PE3j6pENkfDcD+IQndrbtuzWg=";
+    hash = "sha256-ZVSdk6LeAiZpQrrzLxphMbc1b3rNUMpcxcXPP8s/5tE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pypoint/default.nix b/pkgs/development/python-modules/pypoint/default.nix
index bd4a121d35b..b19554ea48f 100644
--- a/pkgs/development/python-modules/pypoint/default.nix
+++ b/pkgs/development/python-modules/pypoint/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "pypoint";
-  version = "2.3.0";
+  version = "2.3.1";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "fredrike";
     repo = "pypoint";
     rev = "v${version}";
-    hash = "sha256-609Zme9IUl8eHNxzrYsRAg7bgZho/OklGM7oI+imyZQ=";
+    hash = "sha256-fO0un6YIK3jutzUxbu9mSqPZHfLa3pMtfxOy1iV3Qio=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/python-homewizard-energy/default.nix b/pkgs/development/python-modules/python-homewizard-energy/default.nix
index c6b5f1ec453..bffdc7dd275 100644
--- a/pkgs/development/python-modules/python-homewizard-energy/default.nix
+++ b/pkgs/development/python-modules/python-homewizard-energy/default.nix
@@ -4,7 +4,6 @@
 , awesomeversion
 , buildPythonPackage
 , fetchFromGitHub
-, fetchpatch
 , poetry-core
 , protobuf
 , pytest-asyncio
@@ -14,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "python-homewizard-energy";
-  version = "2.0.2";
+  version = "2.1.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -23,18 +22,9 @@ buildPythonPackage rec {
     owner = "DCSBL";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-XTSnIL/hBL1Rsyv/tBce/WCvA3n7mZern0v3i6gTOeA=";
+    hash = "sha256-+RuUNH95Txs6JeObYqg2CQl7qxF4YLVQvBDfzj5L9Bk=";
   };
 
-  patches = [
-    # https://github.com/DCSBL/python-homewizard-energy/pull/235
-    (fetchpatch {
-      name = "remove-setuptools-dependency.patch";
-      url = "https://github.com/DCSBL/python-homewizard-energy/commit/b006b0bc1f3d0b4a7569654a1afa90dd4cffaf18.patch";
-      hash = "sha256-WQeepxiYnBfFcQAmrc3pavBz5j1Qo0HmUcOxsK/pr50=";
-    })
-  ];
-
   nativeBuildInputs = [
     poetry-core
   ];
diff --git a/pkgs/development/python-modules/python-telegram-bot/default.nix b/pkgs/development/python-modules/python-telegram-bot/default.nix
index 605d8157051..93969551842 100644
--- a/pkgs/development/python-modules/python-telegram-bot/default.nix
+++ b/pkgs/development/python-modules/python-telegram-bot/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "python-telegram-bot";
-  version = "20.4";
+  version = "20.5";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-owbJJZjBkMjsgfBLRl+rnePrIvQ0sUZs7rP9ie912pw=";
+    hash = "sha256-/AdGpOl87EeVDCAZLjtan7ttE2vUL0gi1qeM18ilYEQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/python-yate/default.nix b/pkgs/development/python-modules/python-yate/default.nix
new file mode 100644
index 00000000000..a35773f298d
--- /dev/null
+++ b/pkgs/development/python-modules/python-yate/default.nix
@@ -0,0 +1,41 @@
+{ lib
+, aiohttp
+, async-timeout
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "python-yate";
+  version = "0.4.1";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "eventphone";
+    repo = "python-yate";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-AdnlNsEOFuzuGTBmfV9zKyv2iFHEJ4eLMrC6SHHf7m0=";
+  };
+
+  propagatedBuildInputs = [
+    aiohttp
+    async-timeout
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "yate"
+  ];
+
+  meta = with lib; {
+    description = "Python library for the yate telephony engine";
+    homepage = "https://github.com/eventphone/python-yate";
+    changelog = "https://github.com/eventphone/python-yate/releases/tag/v${version}";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ clerie ];
+  };
+}
diff --git a/pkgs/development/python-modules/pytrafikverket/default.nix b/pkgs/development/python-modules/pytrafikverket/default.nix
index d1105af452c..3cb161c281c 100644
--- a/pkgs/development/python-modules/pytrafikverket/default.nix
+++ b/pkgs/development/python-modules/pytrafikverket/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "pytrafikverket";
-  version = "0.3.5";
+  version = "0.3.6";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-dBD8CpEiCDhuabUEPzbvhl3WnEcJU9T910VCAI2jDrA=";
+    hash = "sha256-HHvjwkJ+7QMu1lMe6ouV2j3Y67Vv9aoVaJaKDLXbJpU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/twilio/default.nix b/pkgs/development/python-modules/twilio/default.nix
index ef2678e88b3..6d2cfc72c43 100644
--- a/pkgs/development/python-modules/twilio/default.nix
+++ b/pkgs/development/python-modules/twilio/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "twilio";
-  version = "8.7.0";
+  version = "8.8.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "twilio";
     repo = "twilio-python";
     rev = "refs/tags/${version}";
-    hash = "sha256-wzsAHW0OlorLVI6nnDjv8WP1dpzyrmtE4OfwzFnZOH4=";
+    hash = "sha256-fWAVTaie+6lz5cX7hg0s22kHXelIfhh5FNTfxxbUEPw=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/tools/electron-fiddle/default.nix b/pkgs/development/tools/electron-fiddle/default.nix
index eb4874750fa..5fe0a88f252 100644
--- a/pkgs/development/tools/electron-fiddle/default.nix
+++ b/pkgs/development/tools/electron-fiddle/default.nix
@@ -61,7 +61,7 @@ let
       patchShebangs node_modules
 
       mkdir -p ~/.cache/electron/${electronDummyHash}
-      cp -ra '${electron}/lib/electron' "$TMPDIR/electron"
+      cp -ra '${electron}/libexec/electron' "$TMPDIR/electron"
       chmod -R u+w "$TMPDIR/electron"
       (cd "$TMPDIR/electron" && zip -0Xr ~/.cache/electron/${electronDummyHash}/${electronDummyFilename} .)
 
diff --git a/pkgs/development/tools/electron/binary/generic.nix b/pkgs/development/tools/electron/binary/generic.nix
index 34b7f239ecf..615ec9243bb 100644
--- a/pkgs/development/tools/electron/binary/generic.nix
+++ b/pkgs/development/tools/electron/binary/generic.nix
@@ -82,25 +82,22 @@ let
       wrapGAppsHook
     ];
 
-    dontWrapGApps = true; # electron is in lib, we need to wrap it manually
-
     dontUnpack = true;
     dontBuild = true;
 
     installPhase = ''
-      mkdir -p $out/lib/electron $out/bin
-      unzip -d $out/lib/electron $src
-      ln -s $out/lib/electron/electron $out/bin
+      mkdir -p $out/libexec/electron $out/bin
+      unzip -d $out/libexec/electron $src
+      ln -s $out/libexec/electron/electron $out/bin
+      chmod u-x $out/libexec/electron/*.so*
     '';
 
     postFixup = ''
       patchelf \
         --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-        --set-rpath "${atomEnv.libPath}:${electronLibPath}:$out/lib/electron" \
-        $out/lib/electron/electron \
-        ${lib.optionalString (lib.versionAtLeast version "15.0.0") "$out/lib/electron/chrome_crashpad_handler" }
-
-      wrapProgram $out/lib/electron/electron "''${gappsWrapperArgs[@]}"
+        --set-rpath "${atomEnv.libPath}:${electronLibPath}:$out/libexec/electron" \
+        $out/libexec/electron/.electron-wrapped \
+        ${lib.optionalString (lib.versionAtLeast version "15.0.0") "$out/libexec/electron/.chrome_crashpad_handler-wrapped" }
     '';
   };
 
diff --git a/pkgs/development/tools/redisinsight/default.nix b/pkgs/development/tools/redisinsight/default.nix
index bb96df683e2..5c4609e248d 100644
--- a/pkgs/development/tools/redisinsight/default.nix
+++ b/pkgs/development/tools/redisinsight/default.nix
@@ -99,7 +99,7 @@ stdenv.mkDerivation (finalAttrs: {
 
     yarn --offline electron-builder \
       --dir ${if stdenv.isDarwin then "--macos" else "--linux"} ${if stdenv.hostPlatform.isAarch64 then "--arm64" else "--x64"} \
-      -c.electronDist=${electron}/lib/electron \
+      -c.electronDist=${electron}/libexec/electron \
       -c.electronVersion=${electron.version}
 
     runHook postBuild
diff --git a/pkgs/development/tools/rust/cargo-zigbuild/default.nix b/pkgs/development/tools/rust/cargo-zigbuild/default.nix
index 9da32364d13..cc625347de9 100644
--- a/pkgs/development/tools/rust/cargo-zigbuild/default.nix
+++ b/pkgs/development/tools/rust/cargo-zigbuild/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-zigbuild";
-  version = "0.17.1";
+  version = "0.17.2";
 
   src = fetchFromGitHub {
     owner = "messense";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-/3ThQtAQ0pWEIK4cgqYHqoSXtSJB581NLlsH21UNb50=";
+    hash = "sha256-t71h+s97Ip3Gqs7oCzF8GWpTX0p0ltPt7JT61Gk8xF0=";
   };
 
-  cargoHash = "sha256-KUjkiS8TyaKdf1qRfgp2/JMwFGLAFfeTNcGIq+Z6oEU=";
+  cargoHash = "sha256-oJ+zAtTwFSSzwq1gvkRloBj8g30G8Eq7dG2RoaX39lA=";
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/os-specific/linux/fw-ectool/default.nix b/pkgs/os-specific/linux/fw-ectool/default.nix
new file mode 100644
index 00000000000..a73cc1896ec
--- /dev/null
+++ b/pkgs/os-specific/linux/fw-ectool/default.nix
@@ -0,0 +1,41 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, pkg-config
+, hostname
+}:
+
+stdenv.mkDerivation {
+  pname = "fw-ectool";
+  version = "unstable-2022-12-03";
+
+  src = fetchFromGitHub {
+    owner = "DHowett";
+    repo = "fw-ectool";
+    rev = "54c140399bbc3e6a3dce6c9f842727c4128367be";
+    hash = "sha256-2teJFz4zcA+USpbVPXMEIHLdmMLem8ik7YrmrSxr/n0=";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    hostname
+  ];
+
+  buildPhase = ''
+    patchShebangs util
+    make out=out utils
+  '';
+
+  installPhase = ''
+    install -D out/util/ectool $out/bin/ectool
+  '';
+
+  meta = with lib; {
+    description = "EC-Tool adjusted for usage with framework embedded controller";
+    homepage = "https://github.com/DHowett/framework-ec";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.mkg20001 ];
+    platforms = platforms.linux;
+    mainProgram = "ectool";
+  };
+}
diff --git a/pkgs/os-specific/linux/kernel/linux-6.5.nix b/pkgs/os-specific/linux/kernel/linux-6.5.nix
index 672c1c5596a..341cc84be74 100644
--- a/pkgs/os-specific/linux/kernel/linux-6.5.nix
+++ b/pkgs/os-specific/linux/kernel/linux-6.5.nix
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v6.x/linux-${version}.tar.xz";
-    hash = "sha256-I3Zd1EQlRizZKtvuUmcGCP1/P9GDqDslunp7SIPQRRs=";
+    hash = "sha256-ICfhQFfVaK093BANrfTIhTpJsDEnBHimHYj2ARVyZQ8=";
   };
 } // (args.argsOverride or { }))
diff --git a/pkgs/os-specific/linux/nixos-rebuild/default.nix b/pkgs/os-specific/linux/nixos-rebuild/default.nix
index b871c63e36d..c6ec0866791 100644
--- a/pkgs/os-specific/linux/nixos-rebuild/default.nix
+++ b/pkgs/os-specific/linux/nixos-rebuild/default.nix
@@ -3,6 +3,8 @@
 , coreutils
 , gnused
 , gnugrep
+, jq
+, util-linux
 , nix
 , lib
 , nixosTests
@@ -20,7 +22,7 @@ substituteAll {
   nix_x86_64_linux = fallback.x86_64-linux;
   nix_i686_linux = fallback.i686-linux;
   nix_aarch64_linux = fallback.aarch64-linux;
-  path = lib.makeBinPath [ coreutils gnused gnugrep ];
+  path = lib.makeBinPath [ coreutils gnused gnugrep jq util-linux ];
   nativeBuildInputs = [
     installShellFiles
   ];
diff --git a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.8 b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.8
index 64bbbee411d..b0ff5b0a672 100644
--- a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.8
+++ b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.8
@@ -10,7 +10,7 @@
 .Sh SYNOPSIS
 .Nm
 .Bro
-.Cm switch | boot | test | build | dry-build | dry-activate | edit | build-vm | build-vm-with-bootloader
+.Cm switch | boot | test | build | dry-build | dry-activate | edit | build-vm | build-vm-with-bootloader | list-generations Op Fl -json
 .Brc
 .br
 .Op Fl -upgrade | -upgrade-all
@@ -196,6 +196,14 @@ The boot loader is installed on an automatically generated virtual disk
 containing a
 .Pa /boot
 partition.
+.
+.It Cm list-generations Op Fl -json
+List the available generations in a similar manner to the boot loader
+menu. It shows the generation number, build date and time, NixOS version,
+kernel version and the configuration revision. This is useful to get
+information e.g. for which generation to roll back to with
+.Ic nixos-rebuild switch Fl -generation Ar N
+There is also a json version of output available.
 .El
 .
 .
diff --git a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
index 89871056c48..2f89642845e 100755
--- a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
+++ b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
@@ -36,6 +36,7 @@ verboseScript=
 noFlake=
 # comma separated list of vars to preserve when using sudo
 preservedSudoVars=NIXOS_INSTALL_BOOTLOADER
+json=
 
 # log the given argument to stderr
 log() {
@@ -48,7 +49,7 @@ while [ "$#" -gt 0 ]; do
       --help)
         showSyntax
         ;;
-      switch|boot|test|build|edit|dry-build|dry-run|dry-activate|build-vm|build-vm-with-bootloader)
+      switch|boot|test|build|edit|dry-build|dry-run|dry-activate|build-vm|build-vm-with-bootloader|list-generations)
         if [ "$i" = dry-run ]; then i=dry-build; fi
         # exactly one action mandatory, bail out if multiple are given
         if [ -n "$action" ]; then showSyntax; fi
@@ -146,6 +147,9 @@ while [ "$#" -gt 0 ]; do
         k="$1"; shift 1
         lockFlags+=("$i" "$j" "$k")
         ;;
+      --json)
+        json=1
+        ;;
       *)
         log "$0: unknown option \`$i'"
         exit 1
@@ -507,6 +511,87 @@ if [ "$action" = dry-build ]; then
     extraBuildFlags+=(--dry-run)
 fi
 
+if [ "$action" = list-generations ]; then
+    if [ ! -L "$profile" ]; then
+        log "No profile \`$(basename "$profile")' found"
+        exit 1
+    fi
+
+    generation_from_dir() {
+        generation_dir="$1"
+        generation_base="$(basename "$generation_dir")" # Has the format "system-123-link" for generation 123
+        no_link_gen="${generation_base%-link}"  # remove the "-link"
+        echo "${no_link_gen##*-}" # remove everything before the last dash
+    }
+    describe_generation(){
+        generation_dir="$1"
+        generation_number="$(generation_from_dir "$generation_dir")"
+        nixos_version="$(cat "$generation_dir/nixos-version" 2> /dev/null || echo "Unknown")"
+
+        kernel_dir="$(dirname "$(realpath "$generation_dir/kernel")")"
+        kernel_version="$(ls "$kernel_dir/lib/modules" || echo "Unknown")"
+
+        configurationRevision="$("$generation_dir/sw/bin/nixos-version" --configuration-revision 2> /dev/null || true)"
+
+        # Old nixos-version output ignored unknown flags and just printed the version
+        # therefore the following workaround is done not to show the default output
+        nixos_version_default="$("$generation_dir/sw/bin/nixos-version")"
+        if [ "$configurationRevision" == "$nixos_version_default" ]; then
+             configurationRevision=""
+        fi
+
+        # jq automatically quotes the output => don't try to quote it in output!
+        build_date="$(stat "$generation_dir" --format=%W | jq 'todate')"
+
+        pushd "$generation_dir/specialisation/" > /dev/null || :
+        specialisation_list=(*)
+        popd > /dev/null || :
+
+        specialisations="$(jq --compact-output --null-input '$ARGS.positional' --args -- "${specialisation_list[@]}")"
+
+        if [ "$(basename "$generation_dir")" = "$(readlink "$profile")" ]; then
+            current_generation_tag="true"
+        else
+            current_generation_tag="false"
+        fi
+
+        # Escape userdefined strings
+        nixos_version="$(jq -aR <<< "$nixos_version")"
+        kernel_version="$(jq -aR <<< "$kernel_version")"
+        configurationRevision="$(jq -aR <<< "$configurationRevision")"
+        cat << EOF
+{
+  "generation": $generation_number,
+  "date": $build_date,
+  "nixosVersion": $nixos_version,
+  "kernelVersion": $kernel_version,
+  "configurationRevision": $configurationRevision,
+  "specialisations": $specialisations,
+  "current": $current_generation_tag
+}
+EOF
+    }
+
+    find "$(dirname "$profile")" -regex "$profile-[0-9]+-link" |
+        sort -Vr |
+        while read -r generation_dir; do
+            describe_generation "$generation_dir"
+        done |
+        if [ -z "$json" ]; then
+            jq --slurp -r '.[] | [
+                    ([.generation, (if .current == true then "current" else "" end)] | join(" ")),
+                    (.date | fromdate | strflocaltime("%Y-%m-%d %H:%M:%S")),
+                    .nixosVersion, .kernelVersion, .configurationRevision,
+                    (.specialisations | join(" "))
+                ] | @tsv' |
+                column --separator $'\t' --table --table-columns "Generation,Build-date,NixOS version,Kernel,Configuration Revision,Specialisation" |
+                ${PAGER:cat}
+        else
+            jq --slurp .
+        fi
+    exit 0
+fi
+
 
 # Either upgrade the configuration in the system profile (for "switch"
 # or "boot"), or just build it and create a symlink "result" in the
diff --git a/pkgs/os-specific/linux/pam_mount/default.nix b/pkgs/os-specific/linux/pam_mount/default.nix
index 1613e11e028..2ed6829f361 100644
--- a/pkgs/os-specific/linux/pam_mount/default.nix
+++ b/pkgs/os-specific/linux/pam_mount/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "pam_mount";
-  version = "2.19";
+  version = "2.20";
 
   src = fetchurl {
-    url = "mirror://sourceforge/pam-mount/pam_mount/${pname}-${version}.tar.xz";
-    sha256 = "02m6w04xhgv2yx69yxph8giw0sp39s9lvvlffslyna46fnr64qvb";
+    url = "https://inai.de/files/pam_mount/${pname}-${version}.tar.xz";
+    hash = "sha256-VCYgekhWgPjhdkukBbs4w5pODIMGvIJxkQ8bgZozbO0=";
   };
 
   patches = [
diff --git a/pkgs/servers/matrix-synapse/plugins/s3-storage-provider.nix b/pkgs/servers/matrix-synapse/plugins/s3-storage-provider.nix
index 646dfc3728d..42d62539b6b 100644
--- a/pkgs/servers/matrix-synapse/plugins/s3-storage-provider.nix
+++ b/pkgs/servers/matrix-synapse/plugins/s3-storage-provider.nix
@@ -1,14 +1,26 @@
-{ lib, buildPythonPackage, fetchFromGitHub, matrix-synapse, twisted, humanize, boto3, tqdm }:
+{ lib
+, boto3
+, buildPythonPackage
+, fetchFromGitHub
+, humanize
+, matrix-synapse-unwrapped
+, pythonOlder
+, tqdm
+, twisted
+}:
 
 buildPythonPackage rec {
   pname = "matrix-synapse-s3-storage-provider";
   version = "1.2.1";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "synapse-s3-storage-provider";
-    rev = "v${version}";
-    sha256 = "sha256-92Xkq54jrUE2I9uVOxI72V9imLNU6K4JqDdOZb+4f+Y=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-92Xkq54jrUE2I9uVOxI72V9imLNU6K4JqDdOZb+4f+Y=";
   };
 
   postPatch = ''
@@ -16,17 +28,30 @@ buildPythonPackage rec {
       --replace "humanize>=0.5.1,<0.6" "humanize>=0.5.1"
   '';
 
+  buildInputs = [
+    matrix-synapse-unwrapped
+  ];
+
+  propagatedBuildInputs = [
+    boto3
+    humanize
+    tqdm
+    twisted
+  ]
+  # For the s3_media_upload script
+  ++ matrix-synapse-unwrapped.propagatedBuildInputs;
+
+  # Tests need network access
   doCheck = false;
-  pythonImportsCheck = [ "s3_storage_provider" ];
 
-  buildInputs = [ matrix-synapse ];
-  propagatedBuildInputs = [ twisted humanize boto3 tqdm ]
-    # for the s3_media_upload script
-    ++ matrix-synapse.propagatedBuildInputs;
+  pythonImportsCheck = [
+    "s3_storage_provider"
+  ];
 
   meta = with lib; {
     description = "Synapse storage provider to fetch and store media in Amazon S3";
     homepage = "https://github.com/matrix-org/synapse-s3-storage-provider";
+    changelog = "https://github.com/matrix-org/synapse-s3-storage-provider/releases/tag/v${version}";
     license = licenses.asl20;
     maintainers = with maintainers; [ yuka ];
   };
diff --git a/pkgs/servers/nosql/influxdb2/default.nix b/pkgs/servers/nosql/influxdb2/default.nix
index 6a78aa70ee6..c103a0f086f 100644
--- a/pkgs/servers/nosql/influxdb2/default.nix
+++ b/pkgs/servers/nosql/influxdb2/default.nix
@@ -1,6 +1,7 @@
 { buildGoModule
 , fetchFromGitHub
 , fetchurl
+, fetchpatch
 , go-bindata
 , lib
 , perl
@@ -12,23 +13,20 @@
 }:
 
 let
-  version = "2.5.1";
-  # Despite the name, this is not a rolling release. This is the
-  # version of the UI assets for 2.5.1, as specified in
-  # scripts/fetch-ui-assets.sh in the 2.5.1 tag of influxdb.
-  ui_version = "OSS-2022-09-16";
-  libflux_version = "0.188.1";
+  version = "2.7.1";
+  ui_version = "OSS-v${version}";
+  libflux_version = "0.193.0";
 
   src = fetchFromGitHub {
     owner = "influxdata";
     repo = "influxdb";
     rev = "v${version}";
-    sha256 = "sha256-AKyuFBja06BuWYliqIGKOb4PIc5G8S9S+cf/dLrEATY=";
+    hash = "sha256-JWu4V2k8ItbzBa421EtzgMVlDznoDdGjIhfDSaZ0j6c=";
   };
 
   ui = fetchurl {
     url = "https://github.com/influxdata/ui/releases/download/${ui_version}/build.tar.gz";
-    sha256 = "sha256-YKDp1jLyo4n+YTeMaWl8dhN4Lr3H8FXV7stJ3p3zFe8=";
+    hash = "sha256-0k59SKvt9pFt3WSd5PRUThbfbctt2RYtaxaxoyLICm8=";
   };
 
   flux = rustPlatform.buildRustPackage {
@@ -38,10 +36,21 @@ let
       owner = "influxdata";
       repo = "flux";
       rev = "v${libflux_version}";
-      sha256 = "sha256-Xmh7V/o1Gje62kcnTeB9h/fySljhfu+tjbyvryvIGRc=";
+      hash = "sha256-gx6vnGOFu35wasLl7X/73eDsE0/50cAzjmBjZ+H2Ne4=";
     };
+    patches = [
+      # Fix build with recent rust versions
+      (fetchpatch {
+        url = "https://github.com/influxdata/flux/commit/6dc8054cfeec4b65b5c7ae786d633240868b8589.patch";
+        stripLen = 2;
+        extraPrefix = "";
+        excludes = [ "rust-toolchain.toml" ];
+        hash = "sha256-w3z+Z26Xhy9TNICyNhc8XiWNSpdLA23ADI4K/AOMYhg=";
+      })
+      ./no-deny-warnings.patch
+    ];
     sourceRoot = "${src.name}/libflux";
-    cargoSha256 = "sha256-9rPW0lgi3lXJARa1KXgSY8LVJsoFjppok5ODGlqYeYw=";
+    cargoSha256 = "sha256-MoI5nxLGA/3pduZ+vgmSG3lm3Nx58SP+6WXQl2pX9Lc=";
     nativeBuildInputs = [ rustPlatform.bindgenHook ];
     buildInputs = lib.optional stdenv.isDarwin libiconv;
     pkgcfg = ''
@@ -69,7 +78,7 @@ in buildGoModule {
 
   nativeBuildInputs = [ go-bindata pkg-config perl ];
 
-  vendorSha256 = "sha256-02x+HsWkng7OnKVSfkQR8LL1Qk42Bdrw0IMtBpS7xQc=";
+  vendorSha256 = "sha256-5b1WRq3JndkOkKBhMzGZnSyBDY5Lk0UGe/WGHQJp0CQ=";
   subPackages = [ "cmd/influxd" "cmd/telemetryd" ];
 
   PKG_CONFIG_PATH = "${flux}/pkgconfig";
diff --git a/pkgs/servers/nosql/influxdb2/no-deny-warnings.patch b/pkgs/servers/nosql/influxdb2/no-deny-warnings.patch
new file mode 100644
index 00000000000..3000ccad825
--- /dev/null
+++ b/pkgs/servers/nosql/influxdb2/no-deny-warnings.patch
@@ -0,0 +1,10 @@
+diff --git a/flux/src/lib.rs b/flux/src/lib.rs
+index 3fdf4071..a4c02277 100644
+--- a/flux/src/lib.rs
++++ b/flux/src/lib.rs
+@@ -1,5 +1,3 @@
+-#![cfg_attr(feature = "strict", deny(warnings, missing_docs))]
+-
+ //! This module provides the public facing API for Flux's Go runtime, including formatting,
+ //! parsing, and standard library analysis.
+ use std::sync::Arc;
diff --git a/pkgs/tools/graphics/maskromtool/default.nix b/pkgs/tools/graphics/maskromtool/default.nix
index f36932e3be4..6202cdf5481 100644
--- a/pkgs/tools/graphics/maskromtool/default.nix
+++ b/pkgs/tools/graphics/maskromtool/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "maskromtool";
-  version = "2023-07-20";
+  version = "2023-08-06";
 
   src = fetchFromGitHub {
     owner = "travisgoodspeed";
     repo = "maskromtool";
     rev = "v${version}";
-    hash = "sha256-AUZh1GAGN5RUXyK+YvQfhAp124bSI0LvCSaTRutLuE4=";
+    hash = "sha256-CsGa+MQP0EtG3cPxhD1ymZt20QsYMh94XWppbLdvIaE=";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/networking/qcal/default.nix b/pkgs/tools/networking/qcal/default.nix
index efb06fd1be6..31e80039495 100644
--- a/pkgs/tools/networking/qcal/default.nix
+++ b/pkgs/tools/networking/qcal/default.nix
@@ -18,12 +18,12 @@ buildGoModule rec {
   # to that config file in the nix store
   preBuild = ''
     substituteInPlace helpers.go \
-      --replace " config-sample.json " " $out/share/config-sample.json "
+      --replace " config-sample.json " " $out/share/qcal/config-sample.json "
   '';
 
   postInstall = ''
-    mkdir -p $out/share
-    cp config-sample.json $out/share/
+    mkdir -p $out/share/qcal
+    cp config-sample.json $out/share/qcal/
   '';
 
   meta = with lib; {
diff --git a/pkgs/tools/networking/qcard/default.nix b/pkgs/tools/networking/qcard/default.nix
new file mode 100644
index 00000000000..16ffb5d686f
--- /dev/null
+++ b/pkgs/tools/networking/qcard/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildGoModule
+, fetchFromSourcehut
+}:
+
+buildGoModule rec {
+  pname = "qcard";
+  version = "0.7.1";
+
+  src = fetchFromSourcehut {
+    owner = "~psic4t";
+    repo = "qcard";
+    rev = version;
+    hash = "sha256-OwmJSeAOZTX7jMhoLHSIJa0jR8zCadISQF/PqFqltRY=";
+  };
+
+  vendorHash = null;
+
+  # Replace "config-sample.json" in error message with the absolute path
+  # to that config file in the nix store
+  preBuild = ''
+    substituteInPlace helpers.go \
+      --replace " config-sample.json " " $out/share/qcard/config-sample.json "
+  '';
+
+  postInstall = ''
+    mkdir -p $out/share/qcard
+    cp config-sample.json $out/share/qcard/
+  '';
+
+  meta = {
+    description = "CLI addressbook application for CardDAV servers written in Go";
+    homepage = "https://git.sr.ht/~psic4t/qcard";
+    license = lib.licenses.gpl3Plus;
+    mainProgram = "qcard";
+    maintainers = with lib.maintainers; [ antonmosich ];
+  };
+}
diff --git a/pkgs/tools/security/bitwarden/default.nix b/pkgs/tools/security/bitwarden/default.nix
index a9b902f80d3..b962b06e48c 100644
--- a/pkgs/tools/security/bitwarden/default.nix
+++ b/pkgs/tools/security/bitwarden/default.nix
@@ -122,7 +122,7 @@ buildNpmPackage' {
 
     npm exec electron-builder -- \
       --dir \
-      -c.electronDist=${electron}/lib/electron \
+      -c.electronDist=${electron}/libexec/electron \
       -c.electronVersion=${electron.version}
 
     popd
diff --git a/pkgs/tools/security/pwgen/default.nix b/pkgs/tools/security/pwgen/default.nix
index 7870add420b..3c0ce6b21d5 100644
--- a/pkgs/tools/security/pwgen/default.nix
+++ b/pkgs/tools/security/pwgen/default.nix
@@ -24,6 +24,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/tytso/pwgen";
     license = licenses.gpl2Only;
     maintainers = with maintainers; [ fab ];
+    mainProgram = "pwgen";
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 97fbfaccc2d..546a19d17bb 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2547,11 +2547,6 @@ with pkgs;
 
   basiliskii = callPackage ../applications/emulators/basiliskii { };
 
-  bochs = callPackage ../applications/emulators/bochs {
-    inherit (darwin) libobjc;
-    wxGTK = wxGTK32;
-  };
-
   box64 = callPackage ../applications/emulators/box64 {
     hello-x86_64 = if stdenv.hostPlatform.isx86_64 then
       hello
@@ -4742,6 +4737,8 @@ with pkgs;
 
   cowsay = callPackage ../tools/misc/cowsay { };
 
+  fw-ectool = callPackage ../os-specific/linux/fw-ectool { };
+
   czkawka = callPackage ../tools/misc/czkawka {
     inherit (darwin.apple_sdk.frameworks) Foundation;
   };
@@ -25751,6 +25748,8 @@ with pkgs;
 
   websocketpp = callPackage ../development/libraries/websocket++ { };
 
+  wfa2-lib = callPackage ../development/libraries/wfa2-lib { };
+
   webrtc-audio-processing_1 = callPackage ../development/libraries/webrtc-audio-processing {
     stdenv = gcc10StdenvCompat;
     abseil-cpp = abseil-cpp.override {
@@ -27427,6 +27426,8 @@ with pkgs;
 
   qcal = callPackage ../tools/networking/qcal/default.nix { };
 
+  qcard = callPackage ../tools/networking/qcard { };
+
   rake = callPackage ../development/tools/build-managers/rake { };
 
   rakkess = callPackage ../development/tools/rakkess { };
@@ -36686,8 +36687,7 @@ with pkgs;
 
   windowlab = callPackage ../applications/window-managers/windowlab { };
 
-  windowmaker = callPackage ../applications/window-managers/windowmaker { };
-  dockapps = callPackage ../applications/window-managers/windowmaker/dockapps { };
+  dockapps = callPackage ../by-name/wi/windowmaker/dockapps { };
 
   wily = callPackage ../applications/editors/wily { };
 
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index e8cd983378d..a7d07f2f4e5 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -7376,6 +7376,8 @@ self: super: with self; {
 
   python-nvd3 = callPackage ../development/python-modules/python-nvd3 { };
 
+  python-yate = callPackage ../development/python-modules/python-yate { };
+
   python-youtube = callPackage ../development/python-modules/python-youtube { };
 
   py-deprecate = callPackage ../development/python-modules/py-deprecate { };
diff --git a/pkgs/top-level/ruby-packages.nix b/pkgs/top-level/ruby-packages.nix
index 6ae4443678a..540610bccbd 100644
--- a/pkgs/top-level/ruby-packages.nix
+++ b/pkgs/top-level/ruby-packages.nix
@@ -5,10 +5,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1dbzp5lk7canhdrs8n8cap3mwnanfn6i7yn76ba8kzn0h1cx077a";
+      sha256 = "117vxic67jnw6q637kmsb3ryj0x485295pz9a9y4z8xn9bdlsl0z";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   actionmailbox = {
     dependencies = ["actionpack" "activejob" "activerecord" "activestorage" "activesupport" "mail" "net-imap" "net-pop" "net-smtp"];
@@ -16,10 +16,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09640w7sqmxv1gxsw9gfnfdl95qgm90s38n49jyqyqavxnwgnbbs";
+      sha256 = "1r8ldj2giaz8cn49qkdqn5zc29gbsr5ky4fg6r7ali0yh1xh684l";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   actionmailer = {
     dependencies = ["actionpack" "actionview" "activejob" "activesupport" "mail" "net-imap" "net-pop" "net-smtp" "rails-dom-testing"];
@@ -27,10 +27,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15ni57icsw1ilz5srlasff4h31h2ckgmxbdd8jnbniscvz4x2sd0";
+      sha256 = "0w6gvj7ybniq89834hqww9rj2xypz9l91f8niwaws2yq1qklymr2";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   actionpack = {
     dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
@@ -38,10 +38,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "150sjsk12vzj9aswjy3cz124l8n8sn52bhd0wwly73rwc1a750sg";
+      sha256 = "1l319p0gipfgq8bp8dvbv97qqb72rad9zcqn5snhgv20cmpqr69b";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   actiontext = {
     dependencies = ["actionpack" "activerecord" "activestorage" "activesupport" "globalid" "nokogiri"];
@@ -49,10 +49,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0m6bdgspimlsakvi2dwndlf6i9wc1iwcjcm2nmpdfn2jj836fprm";
+      sha256 = "0i47r3n2m8qm002gx7c0lx1pv15pr2zy57dm8j38x960rsb655pp";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   actionview = {
     dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
@@ -60,10 +60,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nn21k5psxdv2fkwxs679lr0b8n1nzli2ks343cx4azn6snp8b8a";
+      sha256 = "0xnpdwj1d8m6c2d90jp9cs50ggiz0jj02ls2h9lg68k4k8mnjbd2";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   activejob = {
     dependencies = ["activesupport" "globalid"];
@@ -71,10 +71,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0s5r5z9jm57jjabh8w2823rpjd1agn8z2rlqgyyn4s9pbbhgalzy";
+      sha256 = "1cn1ic7ml75jm0c10s7cm5mvcgfnafj0kjvvjavpjcxgz6lxcqyb";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   activemodel = {
     dependencies = ["activesupport"];
@@ -82,10 +82,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1rspbw4yxx9fh2wyl2wvgwadwapfyx7j9zlirpd4pmk31wkhl4hf";
+      sha256 = "004w8zaz2g3y6lnrsvlcmljll0m3ndqpgwf0wfscgq6iysibiglm";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   activerecord = {
     dependencies = ["activemodel" "activesupport"];
@@ -93,10 +93,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ygg145wxlgm12b1x5r0rsk2aa6i2wjz7bgb21j8vmyqyfl272cy";
+      sha256 = "04wavps80q3pvhvfbmi4gs102y1p6mxbg8xylzvib35b6m92adpj";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   activestorage = {
     dependencies = ["actionpack" "activejob" "activerecord" "activesupport" "marcel" "mini_mime"];
@@ -104,10 +104,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1gaxpqw4mv7xrk1iaw9jspf4m201mkmchc0c22ax3snm3v6jg2qv";
+      sha256 = "0d6vm6alsp0g6f3548b615zxbz8l2wrmaikwgsf8kv11wf6swb4c";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   activesupport = {
     dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"];
@@ -115,10 +115,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1wzbnv3hns0yiwbgh1m3q5j0d7b0k52nlpwirhxyv3l0ycmljfr9";
+      sha256 = "188kbwkn1lbhz40ala8ykp20jzqphgc68g3d8flin8cqa2xid0s5";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   addressable = {
     dependencies = ["public_suffix"];
@@ -168,10 +168,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0r3g92r9dnvbwklm8dx6w3ym8xhz90a2hs2sdarwhhydfyzxdcrj";
+      sha256 = "1rqhn05qvfzr7d3d4kv4z8ssw04ggg28gfnq92adpxxvkl6wqkms";
       type = "gem";
     };
-    version = "4.1.8";
+    version = "4.2.0";
   };
   atomos = {
     groups = ["default"];
@@ -233,6 +233,16 @@
     };
     version = "0.2.1";
   };
+  bigdecimal = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "07y615s8yldk3k13lmkhpk1k190lcqvmxmnjwgh4bzjan9xrc36y";
+      type = "gem";
+    };
+    version = "3.1.4";
+  };
   bindata = {
     groups = ["default"];
     platforms = [];
@@ -280,10 +290,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1vbq8gprb99anlxijc7hwamfvshd6w1k6kwwg5gs2c674nln1hqf";
+      sha256 = "1jk90pjw4a0fl8ridv63h2w5c5xa2w9ajbq7z02ii70qi2z9j4rm";
       type = "gem";
     };
-    version = "4.1.8";
+    version = "4.2.0";
   };
   camping = {
     dependencies = ["mab" "rack"];
@@ -996,10 +1006,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08r6qgbpkxxsihjmlspk3l1sr69q5hx35p1l4wp7rmkbzys89867";
+      sha256 = "0mbkyyadz9vw7mzixi9dks6i6iw033yn2hzwfvnfdvgqq6ywqs4g";
       type = "gem";
     };
-    version = "0.100.0";
+    version = "0.102.0";
   };
   execjs = {
     groups = ["default"];
@@ -1153,10 +1163,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qr0dn4p3nrqnb8qjdlnsfhz80viv4fn86a450imabr76mr88fs3";
+      sha256 = "0hmfbddsjj7x5i2aj0i8l9jhp19lrcm4d6q4xqm7gyjnrs98v5q5";
       type = "gem";
     };
-    version = "4.1.8";
+    version = "4.2.0";
   };
   gemoji = {
     groups = ["default"];
@@ -1184,10 +1194,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1jl1ng4db6iaa6yddvp69c61r7483kwvcr57hj3qm9pddkgf0bp0";
+      sha256 = "1ij82r1b1190vry1xwqh7nz4qasdh2fppmx93nrv1jam4hy0gm7k";
       type = "gem";
     };
-    version = "4.1.8";
+    version = "4.2.0";
   };
   git = {
     dependencies = ["addressable" "rchardet"];
@@ -1238,10 +1248,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "00r3357m7fdvhsy1xi93bvvih4jgwf8lbg8dwrz2mggi1v6nh6n4";
+      sha256 = "05qg16pxnzshgzgfky83b948r9d03lachq2clm8qrsj4c202smq3";
       type = "gem";
     };
-    version = "4.1.8";
+    version = "4.2.0";
   };
   globalid = {
     dependencies = ["activesupport"];
@@ -1249,10 +1259,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0kqm5ndzaybpnpxqiqkc41k4ksyxl41ln8qqr6kb130cdxsf2dxk";
+      sha256 = "1sbw6b66r7cwdx3jhs46s4lr991969hvigkjpbdl7y3i31qpdgvh";
       type = "gem";
     };
-    version = "1.1.0";
+    version = "1.2.1";
   };
   gobject-introspection = {
     dependencies = ["glib2"];
@@ -1260,10 +1270,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "00lai12z92y6kidsrwnw0d386bwyzjrw0z07ifjxqn5zpyasgvkb";
+      sha256 = "03n47jlyqygxyc5fsf39szfswlcnnmmwqly12cqjqfmk6skvfhc5";
       type = "gem";
     };
-    version = "4.1.8";
+    version = "4.2.0";
   };
   gpgme = {
     dependencies = ["mini_portile2"];
@@ -1271,10 +1281,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qn87vxdsaq1szcvq39rnz38cgqllncdxmiyghnbzl7x5aah8sbw";
+      sha256 = "010wr6nnifi952bx4v5c49q25yx1g8lhib5wiv2sg7bip3yvlyy8";
       type = "gem";
     };
-    version = "2.0.22";
+    version = "2.0.23";
   };
   gtk2 = {
     groups = ["default"];
@@ -1292,10 +1302,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1vcr5wcvfbsq91302playk3i98wdisspkybcmajl04agv4k8xr68";
+      sha256 = "154svzqlkdq7gslv3p8mfih28gbw4gsj4pd8wr1wpwz6nyzmhh8m";
       type = "gem";
     };
-    version = "6.1.1";
+    version = "6.1.2";
   };
   hashie = {
     groups = ["default"];
@@ -2209,10 +2219,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1s95nyppk5wrpfgqrzf6f00g7nk0662zmxm4mr2vbdbl83q3k72x";
+      sha256 = "0q8d881k1b3rbsfcdi3fx0b5vpdr5wcrhn88r2d9j7zjdkxp5mw5";
       type = "gem";
     };
-    version = "3.5.0";
+    version = "3.5.1";
   };
   mime-types-data = {
     groups = ["default"];
@@ -2270,10 +2280,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0jnpsbb2dbcs95p4is4431l2pw1l5pn7dfg3vkgb4ga464j0c5l6";
+      sha256 = "0bkmfi9mb49m0fkdhl2g38i3xxa02d411gg0m8x0gvbwfmmg5ym3";
       type = "gem";
     };
-    version = "5.19.0";
+    version = "5.20.0";
   };
   molinillo = {
     groups = ["default"];
@@ -2457,10 +2467,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1jw8a20a9k05fpz3q24im19b97idss3179z76yn5scc5b8lk2rl7";
+      sha256 = "0k9w2z0953mnjrsji74cshqqp08q7m1r6zhadw1w0g34xzjh3a74";
       type = "gem";
     };
-    version = "1.15.3";
+    version = "1.15.4";
   };
   octokit = {
     dependencies = ["faraday" "sawyer"];
@@ -2554,10 +2564,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1707vylw6yix9q92bpnvn5dflnywx5bh69awyirvn4g39p2yjc2b";
+      sha256 = "0n41ywk853l3arii0ksnbwhzncy16y6n8kfxvd548433gx2355qw";
       type = "gem";
     };
-    version = "4.1.8";
+    version = "4.2.0";
   };
   parallel = {
     groups = ["default"];
@@ -2637,20 +2647,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1zcvxmfa8hxkhpp59fhxyxy1arp70f11zi1jh9c7bsdfspifb7kb";
+      sha256 = "0pfj771p5a29yyyw58qacks464sl86d5m3jxjl5rlqqw2m3v5xq4";
       type = "gem";
     };
-    version = "1.5.3";
+    version = "1.5.4";
   };
   pkg-config = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1i9skw2yry57nyphzvhrvw2k1lan0ysfpf157qd7s7apsscdzc7w";
+      sha256 = "184c3fb62qafc4wpar63w1ig5g7qh22a632slzrpq37zjjwpszqd";
       type = "gem";
     };
-    version = "1.5.2";
+    version = "1.5.5";
   };
   polyglot = {
     groups = ["default"];
@@ -2732,10 +2742,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1v7fmv0n4bhdcwh60dgza44iqai5pg34f5pzm4vh4i5fwx7mpqxh";
+      sha256 = "1x4dwx2shx0p7lsms97r85r7ji7zv57bjy3i1kmcpxc8bxvrr67c";
       type = "gem";
     };
-    version = "6.3.0";
+    version = "6.3.1";
   };
   pwntools = {
     dependencies = ["crabstone" "dentaku" "elftools" "keystone-engine" "method_source" "one_gadget" "rainbow" "ruby2ruby" "rubyserial"];
@@ -2796,10 +2806,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06rd03bpdg29gql5xb6ijdq9br5060v4bykaz739zx2qm8xnjs9j";
+      sha256 = "0rsqin156dawz7gzpy1ijs02afqcr4704vqj56s6yxng3a9ayhwf";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   rails-dom-testing = {
     dependencies = ["activesupport" "minitest" "nokogiri"];
@@ -2829,10 +2839,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0in2b84qqmfnigx0li9bgi6l4knmgbj3a29fzm1zzb5jnv4r1gbr";
+      sha256 = "0sfc16zrcn4jgf5xczb08n6prhmqqgg9f0b4mn73zlzg6cwmqchj";
       type = "gem";
     };
-    version = "7.0.7";
+    version = "7.0.8";
   };
   rainbow = {
     groups = ["default"];
@@ -2964,10 +2974,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0fbs2fbl1g5lra43qk6rawbvynj2qgdzyx1gnjsjcxbl8247bahl";
+      sha256 = "0n3nl3znncrnv2gi4byqhc79jvv50b0vkf7ci7w6a90qn9fvwxxm";
       type = "gem";
     };
-    version = "0.15.0";
+    version = "0.17.0";
   };
   redis-rack = {
     dependencies = ["rack" "redis-store"];
@@ -3124,10 +3134,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ig23w64f9y1gi6l4pv69m0nfhn3nnr3q4s81br9vl1b1z02n5cn";
+      sha256 = "1hr8g9pqw3w87a83kqcxpayrx4jmsziharrg4vqw0gr9kksx2dfv";
       type = "gem";
     };
-    version = "1.56.0";
+    version = "1.56.2";
   };
   rubocop-ast = {
     dependencies = ["parser"];
@@ -3146,10 +3156,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0bp02784v0qm8qcswi169s0ar6216rwk516v3idzpbxznpqp97ac";
+      sha256 = "1v3a2g3wk3aqa0k0zzla10qkxlc625zkj3yf4zcsybs86r5bm4xn";
       type = "gem";
     };
-    version = "1.18.0";
+    version = "1.19.0";
   };
   ruby-graphviz = {
     dependencies = ["rexml"];
@@ -3184,15 +3194,15 @@
     version = "0.8.0";
   };
   ruby-lsp = {
-    dependencies = ["language_server-protocol" "sorbet-runtime" "syntax_tree"];
+    dependencies = ["language_server-protocol" "sorbet-runtime" "syntax_tree" "yarp"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xzl5na2n3g47w9arf0cj0dpdlxssd0bhbsg5h12kpa8lp24ki1y";
+      sha256 = "1310xzjad432d18w882q6j9xgwim6fslgrmh78v49xc8py7rszyk";
       type = "gem";
     };
-    version = "0.8.0";
+    version = "0.9.4";
   };
   ruby-lxc = {
     groups = ["default"];
@@ -3303,10 +3313,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "016bawsahkhxx7p8azxirpl7y2y7i8a027pj8910gwf6ipg329in";
+      sha256 = "02m9zksfy3dwzhbv56xq2wwmlghca5209hdg895pi2x2d2sbkahi";
       type = "gem";
     };
-    version = "1.6.3";
+    version = "1.7.1";
   };
   safe_yaml = {
     groups = ["default"];
@@ -3384,14 +3394,15 @@
     version = "0.19.1";
   };
   sequel = {
+    dependencies = ["bigdecimal"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1jan1hyrsxi964caqm81w364fmczz4xrbd2fi9ciw1hmyb9cm7m4";
+      sha256 = "12vybpvczsd7sybvz44h35n5yzwsbp1d3qn743qw5gs6p362f2av";
       type = "gem";
     };
-    version = "5.71.0";
+    version = "5.72.0";
   };
   sequel_pg = {
     dependencies = ["pg" "sequel"];
@@ -3524,10 +3535,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1abdrhb4sf5wwlvli87nh5jiy13dy2szv448h6a4bzyrg3nf47fx";
+      sha256 = "1dz1h8sjb1rv52673ji0ji95zfy7vfbl6id52p2f3046xk0snjib";
       type = "gem";
     };
-    version = "0.5.10957";
+    version = "0.5.11011";
   };
   sqlite3 = {
     dependencies = ["mini_portile2"];
@@ -3535,10 +3546,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0h95kr5529qv786mfk8r2jjdsdi6v7v3k3dpz69mrcc9i0vpdd37";
+      sha256 = "1kpxfxpjv5h1is0s9zj7d6grh4bsvr0cf6b976mpamdrc39gw9pv";
       type = "gem";
     };
-    version = "1.6.3";
+    version = "1.6.5";
   };
   syntax_tree = {
     dependencies = ["prettier_print"];
@@ -3618,10 +3629,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1r3k8x3vfaa6wnz8mhpn10938bzmfj489zc18q73xpsb469v0nv9";
+      sha256 = "17cwh2ivvkfzv7m0m3rpyagwqz20mcincvjvz7cg3g21xzannqys";
       type = "gem";
     };
-    version = "0.18.1";
+    version = "0.19.0";
   };
   tilt = {
     groups = ["default"];
@@ -3842,6 +3853,16 @@
     };
     version = "0.9.34";
   };
+  yarp = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1bz9lkbcj0q1njggin5g9gi4v15x8qj3dma5vmwibfnf5mzznvx5";
+      type = "gem";
+    };
+    version = "0.10.0";
+  };
   zeitwerk = {
     groups = ["default"];
     platforms = [];