summary refs log tree commit diff
path: root/pkgs/applications/networking/instant-messengers
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/networking/instant-messengers')
-rw-r--r--pkgs/applications/networking/instant-messengers/baresip/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/bluejeans/default.nix16
-rwxr-xr-xpkgs/applications/networking/instant-messengers/bluejeans/update.sh12
-rw-r--r--pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/dino/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/base.nix11
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/default.nix4
-rwxr-xr-xpkgs/applications/networking/instant-messengers/discord/update-discord.sh36
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-desktop-package.json8
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix488
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-desktop.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-web.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/go-neb/default.nix12
-rw-r--r--pkgs/applications/networking/instant-messengers/go-neb/go-mod.patch50
-rw-r--r--pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/kaidan/default.nix62
-rw-r--r--pkgs/applications/networking/instant-messengers/kdeltachat/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/mirage/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/neochat/default.nix48
-rw-r--r--pkgs/applications/networking/instant-messengers/oysttyer/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-mm-sms/default.nix30
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin/default.nix17
-rw-r--r--pkgs/applications/networking/instant-messengers/psi-plus/default.nix89
-rw-r--r--pkgs/applications/networking/instant-messengers/quaternion/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/salut-a-toi/requirements.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/default.nix52
-rw-r--r--pkgs/applications/networking/instant-messengers/teams/default.nix26
-rw-r--r--pkgs/applications/networking/instant-messengers/teamspeak/server.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix36
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix43
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix22
-rwxr-xr-xpkgs/applications/networking/instant-messengers/telegram/tdesktop/update.py77
-rw-r--r--pkgs/applications/networking/instant-messengers/tensor/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/vk-cli/default.nix55
-rw-r--r--pkgs/applications/networking/instant-messengers/wire-desktop/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/zoom-us/default.nix4
38 files changed, 762 insertions, 486 deletions
diff --git a/pkgs/applications/networking/instant-messengers/baresip/default.nix b/pkgs/applications/networking/instant-messengers/baresip/default.nix
index 03f0bf63818..122433d197a 100644
--- a/pkgs/applications/networking/instant-messengers/baresip/default.nix
+++ b/pkgs/applications/networking/instant-messengers/baresip/default.nix
@@ -45,7 +45,6 @@ stdenv.mkDerivation rec {
     platforms = with lib.platforms; linux;
     maintainers = with lib.maintainers; [raskin];
     license = lib.licenses.bsd3;
-    inherit version;
     downloadPage = "http://www.creytiv.com/pub/";
     updateWalker = true;
     downloadURLRegexp = "/baresip-.*[.]tar[.].*";
diff --git a/pkgs/applications/networking/instant-messengers/bluejeans/default.nix b/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
index 6e57e0e9423..adc19f5dcfd 100644
--- a/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
@@ -38,14 +38,17 @@
 , xdg-utils
 }:
 
+let
+  getFirst = n: v: builtins.concatStringsSep "." (lib.take n (lib.splitString "." v));
+in
+
 stdenv.mkDerivation rec {
   pname = "bluejeans";
-  version = "2.21.3";
-  buildNumber = "2";
+  version = "2.22.0.87";
 
   src = fetchurl {
-    url = "https://swdl.bluejeans.com/desktop-app/linux/${version}/BlueJeans_${version}.${buildNumber}.rpm";
-    sha256 = "sha256-a/REuxkqZmLLa7N3CUgUAdq74VMD9D10a/Sx2jOj1QA=";
+    url = "https://swdl.bluejeans.com/desktop-app/linux/${getFirst 3 version}/BlueJeans_${version}.rpm";
+    sha256 = "sha256-0nobn+YcvqakwvBdkoEJrzHoL+OGym2zJ806oUabYfo=";
   };
 
   nativeBuildInputs = [ rpmextract makeWrapper ];
@@ -106,7 +109,7 @@ stdenv.mkDerivation rec {
       --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
       opt/BlueJeans/resources/BluejeansHelper
 
-    cc $localtime64_stub -shared -o "$out"/opt/BlueJeans/liblocaltime64_stub.so
+    cc $localtime64_stub -shared -o "${placeholder "out"}"/opt/BlueJeans/liblocaltime64_stub.so
 
     makeWrapper $out/opt/BlueJeans/bluejeans-v2 $out/bin/bluejeans \
       --set LD_LIBRARY_PATH "${libPath}":"${placeholder "out"}"/opt/BlueJeans \
@@ -119,6 +122,8 @@ stdenv.mkDerivation rec {
     patchShebangs "$out"
   '';
 
+  passthru.updateScript = ./update.sh;
+
   meta = with lib; {
     description = "Video, audio, and web conferencing that works together with the collaboration tools you use every day";
     homepage = "https://www.bluejeans.com";
@@ -127,3 +132,4 @@ stdenv.mkDerivation rec {
     platforms = [ "x86_64-linux" ];
   };
 }
+
diff --git a/pkgs/applications/networking/instant-messengers/bluejeans/update.sh b/pkgs/applications/networking/instant-messengers/bluejeans/update.sh
new file mode 100755
index 00000000000..2c527462003
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/bluejeans/update.sh
@@ -0,0 +1,12 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl pup common-updater-scripts
+
+set -eu -o pipefail
+
+version="$(curl -Ls https://www.bluejeans.com/download | \
+    pup 'a[aria-label~="Linux"] attr{href}' | \
+    #output contains *.deb and *.rpm
+    grep "\.rpm" | \
+    awk -F'[ ._ ]' '{printf $6"."$7"."$8"."$9"\n"}')"
+
+update-source-version bluejeans-gui "$version"
diff --git a/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix b/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix
index 0134fac0e20..ee43e4475d7 100644
--- a/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix
+++ b/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix
@@ -2,12 +2,12 @@
 
 let
   pname = "deltachat-electron";
-  version = "1.15.5";
+  version = "1.20.3";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://download.delta.chat/desktop/v${version}/DeltaChat-${version}.AppImage";
-    sha256 = "sha256-BTGwgC0zSr1tq/X4v/fS/12E7/mGVYQ0m+Bt6o7VL4o=";
+    sha256 = "sha256-u0YjaXb+6BOBWaZANPcaxp7maqlBWAtecSsCGbr67dk=";
   };
 
   appimageContents = appimageTools.extract { inherit name src; };
diff --git a/pkgs/applications/networking/instant-messengers/dino/default.nix b/pkgs/applications/networking/instant-messengers/dino/default.nix
index d4332c0265c..7f0127c28fd 100644
--- a/pkgs/applications/networking/instant-messengers/dino/default.nix
+++ b/pkgs/applications/networking/instant-messengers/dino/default.nix
@@ -4,7 +4,6 @@
 , xorg, libXdmcp, libxkbcommon
 , libnotify, libsoup, libgee
 , librsvg, libsignal-protocol-c
-, fetchpatch
 , libgcrypt
 , epoxy
 , at-spi2-core
diff --git a/pkgs/applications/networking/instant-messengers/discord/base.nix b/pkgs/applications/networking/instant-messengers/discord/base.nix
index a8b2b02f0bf..2d67236c90e 100644
--- a/pkgs/applications/networking/instant-messengers/discord/base.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/base.nix
@@ -5,6 +5,7 @@
 , libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext
 , libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, libxshmfence
 , mesa, nspr, nss, pango, systemd, libappindicator-gtk3, libdbusmenu
+, writeScript, common-updater-scripts
 }:
 
 let
@@ -71,7 +72,15 @@ in stdenv.mkDerivation rec {
     mimeType = "x-scheme-handler/discord";
   };
 
-  passthru.updateScript = ./update-discord.sh;
+  passthru.updateScript = writeScript "discord-update-script" ''
+    #!/usr/bin/env nix-shell
+    #!nix-shell -i bash -p curl gnugrep common-updater-scripts
+    set -eou pipefail;
+    url=$(curl -sI "https://discordapp.com/api/download/${builtins.replaceStrings ["discord-" "discord"] ["" "stable"] pname}?platform=linux&format=tar.gz" | grep -oP 'location: \K\S+')
+    version=''${url##https://dl*.discordapp.net/apps/linux/}
+    version=''${version%%/*.tar.gz}
+    update-source-version ${pname} "$version" --file=./pkgs/applications/networking/instant-messengers/discord/default.nix
+  '';
 
   meta = with lib; {
     description = "All-in-one cross-platform voice and text chat for gamers";
diff --git a/pkgs/applications/networking/instant-messengers/discord/default.nix b/pkgs/applications/networking/instant-messengers/discord/default.nix
index e486cd9de62..d2d8c9a3ec5 100644
--- a/pkgs/applications/networking/instant-messengers/discord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/default.nix
@@ -27,10 +27,10 @@ in {
     pname = "discord-canary";
     binaryName = "DiscordCanary";
     desktopName = "Discord Canary";
-    version = "0.0.124";
+    version = "0.0.126";
     src = fetchurl {
       url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
-      sha256 = "060ypr9rn5yl8iwh4v3ax1v6501yaq72sx50q47sm0wyxn7gpv91";
+      sha256 = "EraTDRKd6t0c9U68tSRdGkeB1hfqNS4KUewEXwkL8io=";
     };
   };
 }.${branch}
diff --git a/pkgs/applications/networking/instant-messengers/discord/update-discord.sh b/pkgs/applications/networking/instant-messengers/discord/update-discord.sh
deleted file mode 100755
index 34c1574c65a..00000000000
--- a/pkgs/applications/networking/instant-messengers/discord/update-discord.sh
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/env bash
-# script to generate ./default.nix
-
-set -e
-exec >"${BASH_SOURCE%/*}/default.nix"
-
-cat <<EOF
-{ branch ? "stable", pkgs }:
-# Generated by ./update-discord.sh
-let
-  inherit (pkgs) callPackage fetchurl;
-in {
-EOF
-
-for branch in "" ptb canary; do
-    url=$(curl -sI "https://discordapp.com/api/download${branch:+/}${branch}?platform=linux&format=tar.gz" | grep -oP 'location: \K\S+')
-    version=${url##https://dl*.discordapp.net/apps/linux/}
-    version=${version%%/*.tar.gz}
-    echo "  ${branch:-stable} = callPackage ./base.nix rec {"
-    echo "    pname = \"discord${branch:+-}${branch}\";"
-    case $branch in
-        "") suffix="" ;;
-        ptb) suffix="PTB" ;;
-        canary) suffix="Canary" ;;
-    esac
-    echo "    binaryName = \"Discord${suffix}\";"
-    echo "    desktopName = \"Discord${suffix:+ }${suffix}\";"
-    echo "    version = \"${version}\";"
-    echo "    src = fetchurl {"
-    echo "      url = \"${url//${version}/\$\{version\}}\";"
-    echo "      sha256 = \"$(nix-prefetch-url "$url")\";"
-    echo "    };"
-    echo "  };"
-done
-
-echo "}.\${branch}"
diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json b/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
index 5293c55f127..063c64fa377 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop-package.json
@@ -2,7 +2,7 @@
   "name": "element-desktop",
   "productName": "Element",
   "main": "src/electron-main.js",
-  "version": "1.7.30",
+  "version": "1.7.31",
   "description": "A feature-rich client for Matrix.org",
   "author": "Element",
   "repository": {
@@ -43,8 +43,8 @@
   },
   "devDependencies": {
     "asar": "^2.0.1",
-    "electron-builder": "22.10.5",
-    "electron-builder-squirrel-windows": "22.10.5",
+    "electron-builder": "22.11.4",
+    "electron-builder-squirrel-windows": "22.11.4",
     "electron-devtools-installer": "^3.1.1",
     "electron-notarize": "^1.0.0",
     "eslint": "7.18.0",
@@ -68,7 +68,7 @@
   },
   "build": {
     "appId": "im.riot.app",
-    "electronVersion": "12.0.9",
+    "electronVersion": "12.0.11",
     "files": [
       "package.json",
       {
diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix
index 258f5cb2dad..733cfa3a11a 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix
@@ -2,14 +2,6 @@
   offline_cache = linkFarm "offline" packages;
   packages = [
     {
-      name = "7zip_bin___7zip_bin_5.0.3.tgz";
-      path = fetchurl {
-        name = "7zip_bin___7zip_bin_5.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-5.0.3.tgz";
-        sha1 = "bc5b5532ecafd923a61f2fb097e3b108c0106a3f";
-      };
-    }
-    {
       name = "7zip_bin___7zip_bin_5.1.1.tgz";
       path = fetchurl {
         name = "7zip_bin___7zip_bin_5.1.1.tgz";
@@ -138,11 +130,11 @@
       };
     }
     {
-      name = "_electron_universal___universal_1.0.4.tgz";
+      name = "_electron_universal___universal_1.0.5.tgz";
       path = fetchurl {
-        name = "_electron_universal___universal_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/@electron/universal/-/universal-1.0.4.tgz";
-        sha1 = "231ac246c39d45b80e159bd21c3f9027dcaa10f5";
+        name = "_electron_universal___universal_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/@electron/universal/-/universal-1.0.5.tgz";
+        sha1 = "b812340e4ef21da2b3ee77b2b4d35c9b86defe37";
       };
     }
     {
@@ -418,6 +410,14 @@
       };
     }
     {
+      name = "_malept_flatpak_bundler___flatpak_bundler_0.4.0.tgz";
+      path = fetchurl {
+        name = "_malept_flatpak_bundler___flatpak_bundler_0.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz";
+        sha1 = "e8a32c30a95d20c2b1bb635cc580981a06389858";
+      };
+    }
+    {
       name = "_sindresorhus_is___is_0.14.0.tgz";
       path = fetchurl {
         name = "_sindresorhus_is___is_0.14.0.tgz";
@@ -450,11 +450,11 @@
       };
     }
     {
-      name = "_types_fs_extra___fs_extra_9.0.9.tgz";
+      name = "_types_fs_extra___fs_extra_9.0.11.tgz";
       path = fetchurl {
-        name = "_types_fs_extra___fs_extra_9.0.9.tgz";
-        url  = "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.9.tgz";
-        sha1 = "11ed43b3f3c6b3490f1ef9bd17f58da896e2d861";
+        name = "_types_fs_extra___fs_extra_9.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.11.tgz";
+        sha1 = "8cc99e103499eab9f347dbc6ca4e99fb8d2c2b87";
       };
     }
     {
@@ -514,11 +514,11 @@
       };
     }
     {
-      name = "_types_yargs___yargs_15.0.13.tgz";
+      name = "_types_yargs___yargs_16.0.3.tgz";
       path = fetchurl {
-        name = "_types_yargs___yargs_15.0.13.tgz";
-        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.13.tgz";
-        sha1 = "34f7fec8b389d7f3c1fd08026a5763e072d3c6dc";
+        name = "_types_yargs___yargs_16.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.3.tgz";
+        sha1 = "4b6d35bb8e680510a7dc2308518a80ee1ef27e01";
       };
     }
     {
@@ -730,19 +730,19 @@
       };
     }
     {
-      name = "app_builder_bin___app_builder_bin_3.5.12.tgz";
+      name = "app_builder_bin___app_builder_bin_3.5.13.tgz";
       path = fetchurl {
-        name = "app_builder_bin___app_builder_bin_3.5.12.tgz";
-        url  = "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.5.12.tgz";
-        sha1 = "bbe174972cc1f481f73d6d92ad47a8b4c7eb4530";
+        name = "app_builder_bin___app_builder_bin_3.5.13.tgz";
+        url  = "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.5.13.tgz";
+        sha1 = "6dd7f4de34a4e408806f99b8c7d6ef1601305b7e";
       };
     }
     {
-      name = "app_builder_lib___app_builder_lib_22.10.5.tgz";
+      name = "app_builder_lib___app_builder_lib_22.11.4.tgz";
       path = fetchurl {
-        name = "app_builder_lib___app_builder_lib_22.10.5.tgz";
-        url  = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.10.5.tgz";
-        sha1 = "24a88581c891e5b187a0d569aa44e7c4a0dc8de2";
+        name = "app_builder_lib___app_builder_lib_22.11.4.tgz";
+        url  = "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.11.4.tgz";
+        sha1 = "f476e8f1c843d2bcce0348d60e2deae3a71b3474";
       };
     }
     {
@@ -938,11 +938,11 @@
       };
     }
     {
-      name = "balanced_match___balanced_match_1.0.0.tgz";
+      name = "balanced_match___balanced_match_1.0.2.tgz";
       path = fetchurl {
-        name = "balanced_match___balanced_match_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz";
-        sha1 = "89b4d199ab2bee49de164ea02b89ce462d71b767";
+        name = "balanced_match___balanced_match_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz";
+        sha1 = "e83e3a7e3f300b34cb9d87f615fa0cbf357690ee";
       };
     }
     {
@@ -986,14 +986,6 @@
       };
     }
     {
-      name = "binaryextensions___binaryextensions_4.15.0.tgz";
-      path = fetchurl {
-        name = "binaryextensions___binaryextensions_4.15.0.tgz";
-        url  = "https://registry.yarnpkg.com/binaryextensions/-/binaryextensions-4.15.0.tgz";
-        sha1 = "c63a502e0078ff1b0e9b00a9f74d3c2b0f8bd32e";
-      };
-    }
-    {
       name = "bl___bl_4.0.3.tgz";
       path = fetchurl {
         name = "bl___bl_4.0.3.tgz";
@@ -1098,19 +1090,19 @@
       };
     }
     {
-      name = "builder_util_runtime___builder_util_runtime_8.7.3.tgz";
+      name = "builder_util_runtime___builder_util_runtime_8.7.5.tgz";
       path = fetchurl {
-        name = "builder_util_runtime___builder_util_runtime_8.7.3.tgz";
-        url  = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.7.3.tgz";
-        sha1 = "0aaafa52d25295c939496f62231ca9ff06c30e40";
+        name = "builder_util_runtime___builder_util_runtime_8.7.5.tgz";
+        url  = "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.7.5.tgz";
+        sha1 = "fbe59e274818885e0d2e358d5b7017c34ae6b0f5";
       };
     }
     {
-      name = "builder_util___builder_util_22.10.5.tgz";
+      name = "builder_util___builder_util_22.11.4.tgz";
       path = fetchurl {
-        name = "builder_util___builder_util_22.10.5.tgz";
-        url  = "https://registry.yarnpkg.com/builder-util/-/builder-util-22.10.5.tgz";
-        sha1 = "8d0b04a3be6acc74938679aa90dcb3181b1ae86b";
+        name = "builder_util___builder_util_22.11.4.tgz";
+        url  = "https://registry.yarnpkg.com/builder-util/-/builder-util-22.11.4.tgz";
+        sha1 = "5deee8e067d6e3248791977ce2928b98fe514342";
       };
     }
     {
@@ -1138,6 +1130,14 @@
       };
     }
     {
+      name = "cacache___cacache_12.0.4.tgz";
+      path = fetchurl {
+        name = "cacache___cacache_12.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz";
+        sha1 = "668bcbd105aeb5f1d92fe25570ec9525c8faa40c";
+      };
+    }
+    {
       name = "cacache___cacache_12.0.3.tgz";
       path = fetchurl {
         name = "cacache___cacache_12.0.3.tgz";
@@ -1226,6 +1226,14 @@
       };
     }
     {
+      name = "chalk___chalk_4.1.1.tgz";
+      path = fetchurl {
+        name = "chalk___chalk_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/chalk/-/chalk-4.1.1.tgz";
+        sha1 = "c80b3fab28bf6371e6863325eee67e618b77e6ad";
+      };
+    }
+    {
       name = "chownr___chownr_1.1.4.tgz";
       path = fetchurl {
         name = "chownr___chownr_1.1.4.tgz";
@@ -1266,6 +1274,14 @@
       };
     }
     {
+      name = "ci_info___ci_info_3.2.0.tgz";
+      path = fetchurl {
+        name = "ci_info___ci_info_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/ci-info/-/ci-info-3.2.0.tgz";
+        sha1 = "2876cb948a498797b5236f0095bc057d0dca38b6";
+      };
+    }
+    {
       name = "cidr_regex___cidr_regex_2.0.10.tgz";
       path = fetchurl {
         name = "cidr_regex___cidr_regex_2.0.10.tgz";
@@ -1658,6 +1674,14 @@
       };
     }
     {
+      name = "debug___debug_3.2.7.tgz";
+      path = fetchurl {
+        name = "debug___debug_3.2.7.tgz";
+        url  = "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz";
+        sha1 = "72580b7e9145fb39b6676f9c5e5fb100b934179a";
+      };
+    }
+    {
       name = "debug___debug_3.2.6.tgz";
       path = fetchurl {
         name = "debug___debug_3.2.6.tgz";
@@ -1818,19 +1842,19 @@
       };
     }
     {
-      name = "dmg_builder___dmg_builder_22.10.5.tgz";
+      name = "dmg_builder___dmg_builder_22.11.4.tgz";
       path = fetchurl {
-        name = "dmg_builder___dmg_builder_22.10.5.tgz";
-        url  = "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.10.5.tgz";
-        sha1 = "65a33c106ead5a350c7de8997c546559bd6e0e7c";
+        name = "dmg_builder___dmg_builder_22.11.4.tgz";
+        url  = "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.11.4.tgz";
+        sha1 = "8e3a31bd835d51d3b686d1a6be6c0d08d3e7b1f4";
       };
     }
     {
-      name = "dmg_license___dmg_license_1.0.8.tgz";
+      name = "dmg_license___dmg_license_1.0.9.tgz";
       path = fetchurl {
-        name = "dmg_license___dmg_license_1.0.8.tgz";
-        url  = "https://registry.yarnpkg.com/dmg-license/-/dmg-license-1.0.8.tgz";
-        sha1 = "d52e234815f1a07a59706e5f2a2fea71991cf784";
+        name = "dmg_license___dmg_license_1.0.9.tgz";
+        url  = "https://registry.yarnpkg.com/dmg-license/-/dmg-license-1.0.9.tgz";
+        sha1 = "a2fb8d692af0e30b0730b5afc91ed9edc2d9cb4f";
       };
     }
     {
@@ -1850,11 +1874,11 @@
       };
     }
     {
-      name = "dot_prop___dot_prop_4.2.0.tgz";
+      name = "dot_prop___dot_prop_4.2.1.tgz";
       path = fetchurl {
-        name = "dot_prop___dot_prop_4.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz";
-        sha1 = "1f19e0c2e1aa0e32797c49799f2837ac6af69c57";
+        name = "dot_prop___dot_prop_4.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.1.tgz";
+        sha1 = "45884194a71fc2cda71cbb4bceb3a4dd2f433ba4";
       };
     }
     {
@@ -1882,11 +1906,11 @@
       };
     }
     {
-      name = "dotenv___dotenv_8.2.0.tgz";
+      name = "dotenv___dotenv_9.0.2.tgz";
       path = fetchurl {
-        name = "dotenv___dotenv_8.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz";
-        sha1 = "97e619259ada750eea3e4ea3e26bceea5424b16a";
+        name = "dotenv___dotenv_9.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/dotenv/-/dotenv-9.0.2.tgz";
+        sha1 = "dacc20160935a37dea6364aa1bef819fb9b6ab05";
       };
     }
     {
@@ -1914,14 +1938,6 @@
       };
     }
     {
-      name = "editions___editions_6.1.0.tgz";
-      path = fetchurl {
-        name = "editions___editions_6.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/editions/-/editions-6.1.0.tgz";
-        sha1 = "ba6c6cf9f4bb571d9e53ea34e771a602e5a66549";
-      };
-    }
-    {
       name = "editor___editor_1.0.0.tgz";
       path = fetchurl {
         name = "editor___editor_1.0.0.tgz";
@@ -1938,19 +1954,19 @@
       };
     }
     {
-      name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.10.5.tgz";
+      name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.11.4.tgz";
       path = fetchurl {
-        name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.10.5.tgz";
-        url  = "https://registry.yarnpkg.com/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-22.10.5.tgz";
-        sha1 = "83d3bf498110341a522cc5263fb4474ae6e05caf";
+        name = "electron_builder_squirrel_windows___electron_builder_squirrel_windows_22.11.4.tgz";
+        url  = "https://registry.yarnpkg.com/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-22.11.4.tgz";
+        sha1 = "6dc50a26396d813f58a4d8e5b90ee3cedb56f4d8";
       };
     }
     {
-      name = "electron_builder___electron_builder_22.10.5.tgz";
+      name = "electron_builder___electron_builder_22.11.4.tgz";
       path = fetchurl {
-        name = "electron_builder___electron_builder_22.10.5.tgz";
-        url  = "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.10.5.tgz";
-        sha1 = "03b156b93e6012609027c3aaa69201a3ad21e454";
+        name = "electron_builder___electron_builder_22.11.4.tgz";
+        url  = "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.11.4.tgz";
+        sha1 = "aadb57a4fc90863e82ebdbc66131400fc3bb4c82";
       };
     }
     {
@@ -1970,11 +1986,11 @@
       };
     }
     {
-      name = "electron_publish___electron_publish_22.10.5.tgz";
+      name = "electron_publish___electron_publish_22.11.4.tgz";
       path = fetchurl {
-        name = "electron_publish___electron_publish_22.10.5.tgz";
-        url  = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.10.5.tgz";
-        sha1 = "9cbe46266b6c79d8c6e99840755682e2262d3543";
+        name = "electron_publish___electron_publish_22.11.4.tgz";
+        url  = "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.11.4.tgz";
+        sha1 = "0f526edb7e0c3f0155103ff3b8a2e363a3a392f1";
       };
     }
     {
@@ -2010,11 +2026,11 @@
       };
     }
     {
-      name = "encoding___encoding_0.1.12.tgz";
+      name = "encoding___encoding_0.1.13.tgz";
       path = fetchurl {
-        name = "encoding___encoding_0.1.12.tgz";
-        url  = "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz";
-        sha1 = "538b66f3ee62cd1ab51ec323829d1f9480c74beb";
+        name = "encoding___encoding_0.1.13.tgz";
+        url  = "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz";
+        sha1 = "56574afdd791f54a8e9b2785c0582a2d26210fa9";
       };
     }
     {
@@ -2050,14 +2066,6 @@
       };
     }
     {
-      name = "errlop___errlop_4.1.0.tgz";
-      path = fetchurl {
-        name = "errlop___errlop_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/errlop/-/errlop-4.1.0.tgz";
-        sha1 = "8e7b8f4f1bf0a6feafce4d14f0c0cf4bf5ef036b";
-      };
-    }
-    {
       name = "errno___errno_0.1.7.tgz";
       path = fetchurl {
         name = "errno___errno_0.1.7.tgz";
@@ -2474,19 +2482,19 @@
       };
     }
     {
-      name = "fs_extra___fs_extra_8.1.0.tgz";
+      name = "fs_extra___fs_extra_10.0.0.tgz";
       path = fetchurl {
-        name = "fs_extra___fs_extra_8.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz";
-        sha1 = "49d43c45a88cd9677668cb7be1b46efdb8d2e1c0";
+        name = "fs_extra___fs_extra_10.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.0.tgz";
+        sha1 = "9ff61b655dde53fb34a82df84bb214ce802e17c1";
       };
     }
     {
-      name = "fs_extra___fs_extra_9.0.1.tgz";
+      name = "fs_extra___fs_extra_8.1.0.tgz";
       path = fetchurl {
-        name = "fs_extra___fs_extra_9.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz";
-        sha1 = "910da0062437ba4c39fedd863f1675ccfefcb9fc";
+        name = "fs_extra___fs_extra_8.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz";
+        sha1 = "49d43c45a88cd9677668cb7be1b46efdb8d2e1c0";
       };
     }
     {
@@ -2498,6 +2506,14 @@
       };
     }
     {
+      name = "fs_extra___fs_extra_9.0.1.tgz";
+      path = fetchurl {
+        name = "fs_extra___fs_extra_9.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz";
+        sha1 = "910da0062437ba4c39fedd863f1675ccfefcb9fc";
+      };
+    }
+    {
       name = "fs_minipass___fs_minipass_1.2.7.tgz";
       path = fetchurl {
         name = "fs_minipass___fs_minipass_1.2.7.tgz";
@@ -2642,11 +2658,11 @@
       };
     }
     {
-      name = "glob_parent___glob_parent_5.1.1.tgz";
+      name = "glob_parent___glob_parent_5.1.2.tgz";
       path = fetchurl {
-        name = "glob_parent___glob_parent_5.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz";
-        sha1 = "b6c1ef417c4e5663ea498f1c45afac6916bbc229";
+        name = "glob_parent___glob_parent_5.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz";
+        sha1 = "869832c58034fe68a4093c17dc15e8340d8401c4";
       };
     }
     {
@@ -2658,6 +2674,14 @@
       };
     }
     {
+      name = "glob___glob_7.1.7.tgz";
+      path = fetchurl {
+        name = "glob___glob_7.1.7.tgz";
+        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz";
+        sha1 = "3b193e9233f01d42d0b3f78294bbeeb418f94a90";
+      };
+    }
+    {
       name = "global_dirs___global_dirs_0.1.1.tgz";
       path = fetchurl {
         name = "global_dirs___global_dirs_0.1.1.tgz";
@@ -2722,6 +2746,14 @@
       };
     }
     {
+      name = "graceful_fs___graceful_fs_4.2.6.tgz";
+      path = fetchurl {
+        name = "graceful_fs___graceful_fs_4.2.6.tgz";
+        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.6.tgz";
+        sha1 = "ff040b2b0853b23c3d31027523706f1885d76bee";
+      };
+    }
+    {
       name = "graceful_fs___graceful_fs_4.2.4.tgz";
       path = fetchurl {
         name = "graceful_fs___graceful_fs_4.2.4.tgz";
@@ -2810,27 +2842,11 @@
       };
     }
     {
-      name = "hosted_git_info___hosted_git_info_2.8.5.tgz";
-      path = fetchurl {
-        name = "hosted_git_info___hosted_git_info_2.8.5.tgz";
-        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.5.tgz";
-        sha1 = "759cfcf2c4d156ade59b0b2dfabddc42a6b9c70c";
-      };
-    }
-    {
-      name = "hosted_git_info___hosted_git_info_2.8.8.tgz";
-      path = fetchurl {
-        name = "hosted_git_info___hosted_git_info_2.8.8.tgz";
-        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz";
-        sha1 = "7539bd4bc1e0e0a895815a2e0262420b12858488";
-      };
-    }
-    {
-      name = "hosted_git_info___hosted_git_info_3.0.8.tgz";
+      name = "hosted_git_info___hosted_git_info_2.8.9.tgz";
       path = fetchurl {
-        name = "hosted_git_info___hosted_git_info_3.0.8.tgz";
-        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.8.tgz";
-        sha1 = "6e35d4cc87af2c5f816e4cb9ce350ba87a3f370d";
+        name = "hosted_git_info___hosted_git_info_2.8.9.tgz";
+        url  = "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz";
+        sha1 = "dffc0bf9a21c02209090f2aa69429e1414daf3f9";
       };
     }
     {
@@ -2890,11 +2906,11 @@
       };
     }
     {
-      name = "iconv_corefoundation___iconv_corefoundation_1.1.5.tgz";
+      name = "iconv_corefoundation___iconv_corefoundation_1.1.6.tgz";
       path = fetchurl {
-        name = "iconv_corefoundation___iconv_corefoundation_1.1.5.tgz";
-        url  = "https://registry.yarnpkg.com/iconv-corefoundation/-/iconv-corefoundation-1.1.5.tgz";
-        sha1 = "90596d444a579aeb109f5ca113f6bb665a41be2b";
+        name = "iconv_corefoundation___iconv_corefoundation_1.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/iconv-corefoundation/-/iconv-corefoundation-1.1.6.tgz";
+        sha1 = "27c135470237f6f8d13462fa1f5eaf250523c29a";
       };
     }
     {
@@ -2906,11 +2922,11 @@
       };
     }
     {
-      name = "iconv_lite___iconv_lite_0.6.2.tgz";
+      name = "iconv_lite___iconv_lite_0.6.3.tgz";
       path = fetchurl {
-        name = "iconv_lite___iconv_lite_0.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.2.tgz";
-        sha1 = "ce13d1875b0c3a674bd6a04b7f76b01b1b6ded01";
+        name = "iconv_lite___iconv_lite_0.6.3.tgz";
+        url  = "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz";
+        sha1 = "a52f80bf38da1952eb5c681790719871a1a72501";
       };
     }
     {
@@ -3122,19 +3138,19 @@
       };
     }
     {
-      name = "is_cidr___is_cidr_3.1.0.tgz";
+      name = "is_ci___is_ci_3.0.0.tgz";
       path = fetchurl {
-        name = "is_cidr___is_cidr_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-cidr/-/is-cidr-3.1.0.tgz";
-        sha1 = "72e233d8e1c4cd1d3f11713fcce3eba7b0e3476f";
+        name = "is_ci___is_ci_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.0.tgz";
+        sha1 = "c7e7be3c9d8eef7d0fa144390bd1e4b88dc4c994";
       };
     }
     {
-      name = "is_core_module___is_core_module_2.2.0.tgz";
+      name = "is_cidr___is_cidr_3.1.0.tgz";
       path = fetchurl {
-        name = "is_core_module___is_core_module_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz";
-        sha1 = "97037ef3d52224d85163f5597b2b63d9afed981a";
+        name = "is_cidr___is_cidr_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-cidr/-/is-cidr-3.1.0.tgz";
+        sha1 = "72e233d8e1c4cd1d3f11713fcce3eba7b0e3476f";
       };
     }
     {
@@ -3330,6 +3346,14 @@
       };
     }
     {
+      name = "isbinaryfile___isbinaryfile_4.0.8.tgz";
+      path = fetchurl {
+        name = "isbinaryfile___isbinaryfile_4.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.8.tgz";
+        sha1 = "5d34b94865bd4946633ecc78a026fc76c5b11fcf";
+      };
+    }
+    {
       name = "isexe___isexe_2.0.0.tgz";
       path = fetchurl {
         name = "isexe___isexe_2.0.0.tgz";
@@ -3346,14 +3370,6 @@
       };
     }
     {
-      name = "istextorbinary___istextorbinary_5.12.0.tgz";
-      path = fetchurl {
-        name = "istextorbinary___istextorbinary_5.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/istextorbinary/-/istextorbinary-5.12.0.tgz";
-        sha1 = "2f84777838668fdf524c305a2363d6057aaeec84";
-      };
-    }
-    {
       name = "jake___jake_10.8.2.tgz";
       path = fetchurl {
         name = "jake___jake_10.8.2.tgz";
@@ -3394,11 +3410,11 @@
       };
     }
     {
-      name = "js_yaml___js_yaml_4.0.0.tgz";
+      name = "js_yaml___js_yaml_4.1.0.tgz";
       path = fetchurl {
-        name = "js_yaml___js_yaml_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.0.0.tgz";
-        sha1 = "f426bc0ff4b4051926cd588c71113183409a121f";
+        name = "js_yaml___js_yaml_4.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz";
+        sha1 = "c1fb65f8f5017901cdd2c951864ba18458a10602";
       };
     }
     {
@@ -3482,11 +3498,11 @@
       };
     }
     {
-      name = "json5___json5_2.1.3.tgz";
+      name = "json5___json5_2.2.0.tgz";
       path = fetchurl {
-        name = "json5___json5_2.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz";
-        sha1 = "c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43";
+        name = "json5___json5_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz";
+        sha1 = "2dfefe720c6ba525d9ebd909950f0515316c89a3";
       };
     }
     {
@@ -3570,6 +3586,14 @@
       };
     }
     {
+      name = "lazy_val___lazy_val_1.0.5.tgz";
+      path = fetchurl {
+        name = "lazy_val___lazy_val_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/lazy-val/-/lazy-val-1.0.5.tgz";
+        sha1 = "6cf3b9f5bc31cee7ee3e369c0832b7583dcd923d";
+      };
+    }
+    {
       name = "lazystream___lazystream_1.0.0.tgz";
       path = fetchurl {
         name = "lazystream___lazystream_1.0.0.tgz";
@@ -4162,11 +4186,11 @@
       };
     }
     {
-      name = "node_fetch_npm___node_fetch_npm_2.0.2.tgz";
+      name = "node_fetch_npm___node_fetch_npm_2.0.4.tgz";
       path = fetchurl {
-        name = "node_fetch_npm___node_fetch_npm_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz";
-        sha1 = "7258c9046182dca345b4208eda918daf33697ff7";
+        name = "node_fetch_npm___node_fetch_npm_2.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz";
+        sha1 = "6507d0e17a9ec0be3bec516958a497cec54bf5a4";
       };
     }
     {
@@ -4218,14 +4242,6 @@
       };
     }
     {
-      name = "normalize_package_data___normalize_package_data_3.0.2.tgz";
-      path = fetchurl {
-        name = "normalize_package_data___normalize_package_data_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.2.tgz";
-        sha1 = "cae5c410ae2434f9a6c1baa65d5bc3b9366c8699";
-      };
-    }
-    {
       name = "normalize_path___normalize_path_3.0.0.tgz";
       path = fetchurl {
         name = "normalize_path___normalize_path_3.0.0.tgz";
@@ -4234,11 +4250,11 @@
       };
     }
     {
-      name = "normalize_url___normalize_url_4.5.0.tgz";
+      name = "normalize_url___normalize_url_4.5.1.tgz";
       path = fetchurl {
-        name = "normalize_url___normalize_url_4.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.0.tgz";
-        sha1 = "453354087e6ca96957bd8f5baf753f5982142129";
+        name = "normalize_url___normalize_url_4.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz";
+        sha1 = "0dd90cf1288ee1d1313b87081c9a5932ee48518a";
       };
     }
     {
@@ -4346,14 +4362,6 @@
       };
     }
     {
-      name = "npm_registry_fetch___npm_registry_fetch_4.0.2.tgz";
-      path = fetchurl {
-        name = "npm_registry_fetch___npm_registry_fetch_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-4.0.2.tgz";
-        sha1 = "2b1434f93ccbe6b6385f8e45f45db93e16921d7a";
-      };
-    }
-    {
       name = "npm_registry_fetch___npm_registry_fetch_4.0.7.tgz";
       path = fetchurl {
         name = "npm_registry_fetch___npm_registry_fetch_4.0.7.tgz";
@@ -5026,11 +5034,11 @@
       };
     }
     {
-      name = "read_config_file___read_config_file_6.0.0.tgz";
+      name = "read_config_file___read_config_file_6.2.0.tgz";
       path = fetchurl {
-        name = "read_config_file___read_config_file_6.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/read-config-file/-/read-config-file-6.0.0.tgz";
-        sha1 = "224b5dca6a5bdc1fb19e63f89f342680efdb9299";
+        name = "read_config_file___read_config_file_6.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/read-config-file/-/read-config-file-6.2.0.tgz";
+        sha1 = "71536072330bcd62ba814f91458b12add9fc7ade";
       };
     }
     {
@@ -5234,14 +5242,6 @@
       };
     }
     {
-      name = "resolve___resolve_1.20.0.tgz";
-      path = fetchurl {
-        name = "resolve___resolve_1.20.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz";
-        sha1 = "629a013fb3f70755d6f0b7935cc1c2c5378b1975";
-      };
-    }
-    {
       name = "responselike___responselike_1.0.2.tgz";
       path = fetchurl {
         name = "responselike___responselike_1.0.2.tgz";
@@ -5290,11 +5290,11 @@
       };
     }
     {
-      name = "safe_buffer___safe_buffer_5.2.0.tgz";
+      name = "safe_buffer___safe_buffer_5.2.1.tgz";
       path = fetchurl {
-        name = "safe_buffer___safe_buffer_5.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz";
-        sha1 = "b74daec49b1148f88c64b68d49b1e815c1f2f519";
+        name = "safe_buffer___safe_buffer_5.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz";
+        sha1 = "1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6";
       };
     }
     {
@@ -5306,14 +5306,6 @@
       };
     }
     {
-      name = "safe_buffer___safe_buffer_5.2.1.tgz";
-      path = fetchurl {
-        name = "safe_buffer___safe_buffer_5.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz";
-        sha1 = "1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6";
-      };
-    }
-    {
       name = "safer_buffer___safer_buffer_2.1.2.tgz";
       path = fetchurl {
         name = "safer_buffer___safer_buffer_2.1.2.tgz";
@@ -5386,6 +5378,14 @@
       };
     }
     {
+      name = "semver___semver_7.3.5.tgz";
+      path = fetchurl {
+        name = "semver___semver_7.3.5.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz";
+        sha1 = "0b621c879348d8998e4b0e4be94b3f12e6018ef7";
+      };
+    }
+    {
       name = "set_blocking___set_blocking_2.0.0.tgz";
       path = fetchurl {
         name = "set_blocking___set_blocking_2.0.0.tgz";
@@ -5842,11 +5842,11 @@
       };
     }
     {
-      name = "temp_file___temp_file_3.3.7.tgz";
+      name = "temp_file___temp_file_3.4.0.tgz";
       path = fetchurl {
-        name = "temp_file___temp_file_3.3.7.tgz";
-        url  = "https://registry.yarnpkg.com/temp-file/-/temp-file-3.3.7.tgz";
-        sha1 = "686885d635f872748e384e871855958470aeb18a";
+        name = "temp_file___temp_file_3.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/temp-file/-/temp-file-3.4.0.tgz";
+        sha1 = "766ea28911c683996c248ef1a20eea04d51652c7";
       };
     }
     {
@@ -5866,14 +5866,6 @@
       };
     }
     {
-      name = "textextensions___textextensions_5.12.0.tgz";
-      path = fetchurl {
-        name = "textextensions___textextensions_5.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/textextensions/-/textextensions-5.12.0.tgz";
-        sha1 = "b908120b5c1bd4bb9eba41423d75b176011ab68a";
-      };
-    }
-    {
       name = "through2___through2_2.0.5.tgz";
       path = fetchurl {
         name = "through2___through2_2.0.5.tgz";
@@ -5930,6 +5922,14 @@
       };
     }
     {
+      name = "tmp_promise___tmp_promise_3.0.2.tgz";
+      path = fetchurl {
+        name = "tmp_promise___tmp_promise_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/tmp-promise/-/tmp-promise-3.0.2.tgz";
+        sha1 = "6e933782abff8b00c3119d63589ca1fb9caaa62a";
+      };
+    }
+    {
       name = "tmp___tmp_0.1.0.tgz";
       path = fetchurl {
         name = "tmp___tmp_0.1.0.tgz";
@@ -5938,6 +5938,14 @@
       };
     }
     {
+      name = "tmp___tmp_0.2.1.tgz";
+      path = fetchurl {
+        name = "tmp___tmp_0.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz";
+        sha1 = "8457fc3037dcf4719c251367a1af6500ee1ccf14";
+      };
+    }
+    {
       name = "to_fast_properties___to_fast_properties_2.0.0.tgz";
       path = fetchurl {
         name = "to_fast_properties___to_fast_properties_2.0.0.tgz";
@@ -6282,22 +6290,6 @@
       };
     }
     {
-      name = "version_compare___version_compare_1.1.0.tgz";
-      path = fetchurl {
-        name = "version_compare___version_compare_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/version-compare/-/version-compare-1.1.0.tgz";
-        sha1 = "7b3e67e7e6cec5c72d9c9e586f8854e419ade17c";
-      };
-    }
-    {
-      name = "version_range___version_range_1.1.0.tgz";
-      path = fetchurl {
-        name = "version_range___version_range_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/version-range/-/version-range-1.1.0.tgz";
-        sha1 = "1c233064202ee742afc9d56e21da3b2e15260acf";
-      };
-    }
-    {
       name = "walk___walk_2.3.14.tgz";
       path = fetchurl {
         name = "walk___walk_2.3.14.tgz";
@@ -6514,19 +6506,19 @@
       };
     }
     {
-      name = "y18n___y18n_3.2.1.tgz";
+      name = "y18n___y18n_3.2.2.tgz";
       path = fetchurl {
-        name = "y18n___y18n_3.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz";
-        sha1 = "6d15fba884c08679c0d77e88e7759e811e07fa41";
+        name = "y18n___y18n_3.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz";
+        sha1 = "85c901bd6470ce71fc4bb723ad209b70f7f28696";
       };
     }
     {
-      name = "y18n___y18n_4.0.0.tgz";
+      name = "y18n___y18n_4.0.3.tgz";
       path = fetchurl {
-        name = "y18n___y18n_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz";
-        sha1 = "95ef94f85ecc81d007c264e190a120f0a3c8566b";
+        name = "y18n___y18n_4.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz";
+        sha1 = "b5f259c82cd6e336921efd7bfd8bf560de9eeedf";
       };
     }
     {
@@ -6602,11 +6594,11 @@
       };
     }
     {
-      name = "yargs___yargs_16.2.0.tgz";
+      name = "yargs___yargs_17.0.1.tgz";
       path = fetchurl {
-        name = "yargs___yargs_16.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz";
-        sha1 = "1c82bf0f6b6a66eafce7ef30e376f49a12477f66";
+        name = "yargs___yargs_17.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-17.0.1.tgz";
+        sha1 = "6a1ced4ed5ee0b388010ba9fd67af83b9362e0bb";
       };
     }
     {
diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
index 6424972cbf7..f8f4d31d6ec 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
@@ -8,12 +8,12 @@
 
 let
   executableName = "element-desktop";
-  version = "1.7.30";
+  version = "1.7.31";
   src = fetchFromGitHub {
     owner = "vector-im";
     repo = "element-desktop";
     rev = "v${version}";
-    sha256 = "09k1xxmzqvw8c1x9ndsdvwj4598rdx9zqraz3rmr3i58s51vycxp";
+    sha256 = "14vyqzf69g4n3i7qjm1pgq2kwym6cira0jwvirzdrwxkfsl0dsq6";
   };
 in mkYarnPackage rec {
   name = "element-desktop-${version}";
diff --git a/pkgs/applications/networking/instant-messengers/element/element-web.nix b/pkgs/applications/networking/instant-messengers/element/element-web.nix
index 5baed75ba52..d9aec35b04b 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-web.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-web.nix
@@ -12,11 +12,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "element-web";
-  version = "1.7.30";
+  version = "1.7.31";
 
   src = fetchurl {
     url = "https://github.com/vector-im/element-web/releases/download/v${version}/element-v${version}.tar.gz";
-    sha256 = "1pnmgdyacxfk8hdf930rqqvqrcvckc3m4pb5mkznlirsmw06nfay";
+    sha256 = "1p0vg5bkri7qiqv5yic56hjjbb5zvhvyzsm5zi7fx3yb7zdxmr3f";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/networking/instant-messengers/go-neb/default.nix b/pkgs/applications/networking/instant-messengers/go-neb/default.nix
index 04418dc64fc..f1e335133d7 100644
--- a/pkgs/applications/networking/instant-messengers/go-neb/default.nix
+++ b/pkgs/applications/networking/instant-messengers/go-neb/default.nix
@@ -1,20 +1,20 @@
-{ lib, buildGoModule, fetchFromGitHub, nixosTests }:
+{ lib, buildGoModule, fetchFromGitHub, nixosTests, olm }:
 
 buildGoModule {
   pname = "go-neb";
-  version = "unstable-2020-04-09";
+  version = "unstable-2021-03-24";
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "go-neb";
-    rev = "1e297c50ad2938e511a3c86f4b190fd3fc3559d6";
-    sha256 = "1azwy4s4kmypps1fjbz76flpi1b7sjzjj4qwx94cry0hn3qfnrc6";
+    rev = "b6edd50d6e33de3bcdb35055fa6c5f0157f45321";
+    sha256 = "sha256-wFqkN4C0rWzWxa6+/LiHMMS8i/g3Q57f5z4cG2XZQzs=";
   };
 
   subPackages = [ "." ];
 
-  patches = [ ./go-mod.patch ];
+  buildInputs = [ olm ];
 
-  vendorSha256 = "1k3980yf6zl00dkd1djwhm2f9nnffzrsbs3kq3alpw2gm0aln739";
+  vendorSha256 = "sha256-sWrLWjODf25Z8QqCDg4KyVWmTc3PRiYpRL88yxK0j/M";
 
   doCheck = false;
 
diff --git a/pkgs/applications/networking/instant-messengers/go-neb/go-mod.patch b/pkgs/applications/networking/instant-messengers/go-neb/go-mod.patch
deleted file mode 100644
index 1c725652d43..00000000000
--- a/pkgs/applications/networking/instant-messengers/go-neb/go-mod.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-diff --git a/go.mod b/go.mod
-index 8ed4e68..83526e7 100644
---- a/go.mod
-+++ b/go.mod
-@@ -4,24 +4,15 @@ go 1.14
- 
- require (
- 	github.com/PuerkitoBio/goquery v1.5.1 // indirect
--	github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect
--	github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4 // indirect
- 	github.com/andygrunwald/go-jira v1.11.0
- 	github.com/beorn7/perks v1.0.1 // indirect
--	github.com/cespare/xxhash/v2 v2.1.1 // indirect
- 	github.com/dghubble/oauth1 v0.6.0
- 	github.com/die-net/lrucache v0.0.0-20190707192454-883874fe3947
--	github.com/go-kit/kit v0.9.0 // indirect
--	github.com/go-logfmt/logfmt v0.4.0 // indirect
--	github.com/go-stack/stack v1.8.0 // indirect
--	github.com/gogo/protobuf v1.1.1 // indirect
- 	github.com/golang/protobuf v1.3.2 // indirect
- 	github.com/google/go-cmp v0.4.0 // indirect
- 	github.com/google/go-github v2.0.1-0.20160719063544-b5e5babef39c+incompatible
- 	github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79
- 	github.com/jaytaylor/html2text v0.0.0-20200220170450-61d9dc4d7195
--	github.com/json-iterator/go v1.1.9 // indirect
--	github.com/julienschmidt/httprouter v1.2.0 // indirect
- 	github.com/kr/pretty v0.1.0 // indirect
- 	github.com/lib/pq v1.3.0
- 	github.com/matrix-org/dugong v0.0.0-20180820122854-51a565b5666b
-@@ -32,9 +23,6 @@ require (
- 	github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect
- 	github.com/mmcdole/gofeed v1.0.0-beta2
- 	github.com/mmcdole/goxpp v0.0.0-20181012175147-0068e33feabf // indirect
--	github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
--	github.com/modern-go/reflect2 v1.0.1 // indirect
--	github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223 // indirect
- 	github.com/olekukonko/tablewriter v0.0.4 // indirect
- 	github.com/pkg/errors v0.8.1 // indirect
- 	github.com/prometheus/client_golang v0.8.1-0.20160916180340-5636dc67ae77
-@@ -47,10 +35,7 @@ require (
- 	github.com/stretchr/testify v1.4.0 // indirect
- 	golang.org/x/net v0.0.0-20200301022130-244492dfa37a
- 	golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d
--	golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e // indirect
- 	golang.org/x/sys v0.0.0-20200122134326-e047566fdf82 // indirect
--	golang.org/x/tools v0.0.0-20200311090712-aafaee8bce8c // indirect
--	gopkg.in/alecthomas/kingpin.v2 v2.2.6 // indirect
- 	gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 // indirect
- 	gopkg.in/yaml.v2 v2.2.8
- )
diff --git a/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix b/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
index 27bc38cf6c2..b932e699ac6 100644
--- a/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
@@ -11,11 +11,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "jitsi-meet-electron";
-  version = "2.8.6";
+  version = "2.8.8";
 
   src = fetchurl {
     url = "https://github.com/jitsi/jitsi-meet-electron/releases/download/v${version}/jitsi-meet-x86_64.AppImage";
-    sha256 = "sha256-kLX8SZERlyNVSvszkV/fkQh/Z/Z20PAPJ9eug2oKlqI=";
+    sha256 = "sha256-ORj0xSFzdyOVuybaDyTrawsVkJymKEHLbFxGUgzXNWY=";
     name = "${pname}-${version}.AppImage";
   };
 
diff --git a/pkgs/applications/networking/instant-messengers/kaidan/default.nix b/pkgs/applications/networking/instant-messengers/kaidan/default.nix
new file mode 100644
index 00000000000..74449ae705e
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/kaidan/default.nix
@@ -0,0 +1,62 @@
+{ mkDerivation
+, lib
+, fetchFromGitLab
+, cmake
+, extra-cmake-modules
+, pkg-config
+, qtquickcontrols2
+, qtmultimedia
+, qtlocation
+, qqc2-desktop-style
+, kirigami2
+, knotifications
+, zxing-cpp
+, qxmpp
+, gst_all_1
+}:
+
+mkDerivation rec {
+  pname = "kaidan";
+  version = "0.8.0";
+
+  src = fetchFromGitLab {
+    domain = "invent.kde.org";
+    owner = "network";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "070njci5zyzahmz3nqyp660chxnqx1mxp31w17syfllvrw403qmg";
+  };
+
+  nativeBuildInputs = [ cmake extra-cmake-modules pkg-config ];
+
+  buildInputs = with gst_all_1; [
+    qtquickcontrols2
+    qtmultimedia
+    qtlocation
+    qqc2-desktop-style
+    kirigami2
+    knotifications
+    zxing-cpp
+    qxmpp
+    gstreamer
+    gst-plugins-bad
+    gst-plugins-base
+    gst-plugins-good
+  ];
+  postInstall = ''
+    qtWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0")
+  '';
+
+  meta = with lib; {
+    description = "User-friendly and modern chat app, using XMPP";
+    homepage = "https://www.kaidan.im";
+    license = with licenses; [
+      gpl3Plus
+      mit
+      asl20
+      cc-by-sa-40
+    ];
+    maintainers = with maintainers; [ astro ];
+    platforms = with platforms; linux;
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix b/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
index 87ffa16736e..4918a4d91f8 100644
--- a/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
@@ -13,13 +13,13 @@
 
 mkDerivation rec {
   pname = "kdeltachat";
-  version = "unstable-2021-06-06";
+  version = "unstable-2021-07-04";
 
   src = fetchFromSourcehut {
     owner = "~link2xt";
     repo = "kdeltachat";
-    rev = "321c19b7415e837acc4e66d535e82518618bc096";
-    sha256 = "19py9mxpjz09fhyyvxf75s77nq0jwwfiljq9289192p61grk6625";
+    rev = "5d3cddc47773b49d4a801d031c1de96c38617908";
+    sha256 = "1sah27pvdkilnyj41xf4awri9ya14gxayr99qksllz92ywd9lxad";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/mirage/default.nix b/pkgs/applications/networking/instant-messengers/mirage/default.nix
index 42ea1c52fa9..db30ede8a10 100644
--- a/pkgs/applications/networking/instant-messengers/mirage/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mirage/default.nix
@@ -54,6 +54,5 @@ mkDerivation rec {
     maintainers = with maintainers; [ colemickens ];
     broken = stdenv.isDarwin;
     inherit (qtbase.meta) platforms;
-    inherit version;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/neochat/default.nix b/pkgs/applications/networking/instant-messengers/neochat/default.nix
index c0e0c80b459..b6706d64786 100644
--- a/pkgs/applications/networking/instant-messengers/neochat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/neochat/default.nix
@@ -3,56 +3,58 @@
 , fetchFromGitLab
 , pkg-config
 , cmake
-, qtquickcontrols2
-, qtmultimedia
-, qtgraphicaleffects
-, qtkeychain
-, libpulseaudio
-, olm
-, libsecret
 , cmark
 , extra-cmake-modules
+, kconfig
+, kdbusaddons
+, ki18n
 , kirigami2
 , kitemmodels
-, ki18n
 , knotifications
-, kdbusaddons
-, kconfig
-, libquotient
 , kquickimageedit
+, libpulseaudio
+, libquotient
+, libsecret
+, olm
+, qqc2-desktop-style
+, qtgraphicaleffects
+, qtkeychain
+, qtmultimedia
+, qtquickcontrols2
 }:
 
 mkDerivation rec {
   pname = "neochat";
-  version = "1.1.1";
+  version = "1.2";
 
   src = fetchFromGitLab {
     domain = "invent.kde.org";
     owner = "network";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-HvLPsU+fxlyPDP7i9OSnZ/C1RjouOQCp+4WCl6FlFJo=";
+    sha256 = "sha256-Kpv7BY/qS0A3xFlYFhz1RRNwQVsyhOTHHGDbWRTTv1I=";
   };
 
   nativeBuildInputs = [ cmake extra-cmake-modules pkg-config ];
 
   buildInputs = [
-    qtkeychain
-    qtquickcontrols2
-    qtmultimedia
-    qtgraphicaleffects
-    olm
-    libsecret
     cmark
+    kconfig
+    kdbusaddons
+    ki18n
     kirigami2
     kitemmodels
-    ki18n
     knotifications
-    kdbusaddons
-    kconfig
-    libquotient
     kquickimageedit
     libpulseaudio
+    libquotient
+    libsecret
+    olm
+    qtgraphicaleffects
+    qtkeychain
+    qtmultimedia
+    qtquickcontrols2
+    qqc2-desktop-style
   ];
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/instant-messengers/oysttyer/default.nix b/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
index e3595e07a78..33f3b90873d 100644
--- a/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
+++ b/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
@@ -33,7 +33,6 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    inherit version;
     description = "Perl Console Twitter Client";
     homepage    = "http://oysttyer.github.io/";
     maintainers = with maintainers; [ woffs ];
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-mm-sms/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-mm-sms/default.nix
new file mode 100644
index 00000000000..3bdecf504ce
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-mm-sms/default.nix
@@ -0,0 +1,30 @@
+{ lib, stdenv, glibmm, pidgin, pkg-config, modemmanager, fetchFromGitLab } :
+
+stdenv.mkDerivation rec {
+  pname = "purple-mm-sms";
+  version = "0.1.7";
+
+  src = fetchFromGitLab {
+    domain = "source.puri.sm";
+    owner = "Librem5";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0917gjig35hmi6isqb62vhxd3lkc2nwdn13ym2gvzgcjfgjzjajr";
+  };
+
+  makeFlags = [
+    "DATA_ROOT_DIR_PURPLE=$(out)/share"
+    "PLUGIN_DIR_PURPLE=$(out)/lib/purple-2"
+  ];
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ glibmm pidgin modemmanager ];
+
+  meta = with lib; {
+    homepage = "https://source.puri.sm/Librem5/purple-mm-sms";
+    description = "A libpurple plugin for sending and receiving SMS via Modemmanager";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ tomfitzhenry ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/pidgin/default.nix b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
index dc5a8739760..b5bdef03db7 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
@@ -2,8 +2,9 @@
 , gtkspell2, aspell
 , gst_all_1, startupnotification, gettext
 , perlPackages, libxml2, nss, nspr, farstream
-, libXScrnSaver, ncurses, avahi, dbus, dbus-glib, intltool, libidn
-, lib, python, libICE, libXext, libSM
+, libXScrnSaver, avahi, dbus, dbus-glib, intltool, libidn
+, lib, python3, libICE, libXext, libSM
+, libgnt, ncurses
 , cyrus_sasl ? null
 , openssl ? null
 , gnutls ? null
@@ -16,28 +17,27 @@
 let unwrapped = stdenv.mkDerivation rec {
   pname = "pidgin";
   majorVersion = "2";
-  version = "${majorVersion}.13.0";
+  version = "${majorVersion}.14.6";
 
   src = fetchurl {
     url = "mirror://sourceforge/pidgin/${pname}-${version}.tar.bz2";
-    sha256 = "13vdqj70315p9rzgnbxjp9c51mdzf1l4jg1kvnylc4bidw61air7";
+    sha256 = "bb45f7c032f9efd6922a5dbf2840995775e5584771b23992d04f6eff7dff5336";
   };
 
-  inherit nss ncurses;
-
   nativeBuildInputs = [ makeWrapper ];
 
   NIX_CFLAGS_COMPILE = "-I${gst_all_1.gst-plugins-base.dev}/include/gstreamer-1.0";
 
   buildInputs = let
-    python-with-dbus = python.withPackages (pp: with pp; [ dbus-python ]);
+    python-with-dbus = python3.withPackages (pp: with pp; [ dbus-python ]);
   in [
     aspell startupnotification
     gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
     libxml2 nss nspr
-    libXScrnSaver ncurses python-with-dbus
+    libXScrnSaver python-with-dbus
     avahi dbus dbus-glib intltool libidn
     libICE libXext libSM cyrus_sasl
+    libgnt ncurses # optional: build finch - the console UI
   ]
   ++ (lib.optional (openssl != null) openssl)
   ++ (lib.optional (gnutls != null) gnutls)
@@ -62,6 +62,7 @@ let unwrapped = stdenv.mkDerivation rec {
     "--disable-meanwhile"
     "--disable-nm"
     "--disable-tcl"
+    "--disable-gevolution"
   ]
   ++ (lib.optionals (cyrus_sasl != null) [ "--enable-cyrus-sasl=yes" ])
   ++ (lib.optionals (gnutls != null) ["--enable-gnutls=yes" "--enable-nss=no"])
diff --git a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
index 03f8f7b961a..01a8a71f032 100644
--- a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
+++ b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
@@ -1,38 +1,103 @@
-{ lib, mkDerivation, fetchFromGitHub, cmake
-, qtbase, qtmultimedia, qtx11extras, qttools, qtwebengine
-, libidn, qca-qt5, libXScrnSaver, hunspell
-, libsecret, libgcrypt, libotr, html-tidy, libgpgerror, libsignal-protocol-c
+{ lib
+, mkDerivation
+, fetchFromGitHub
+, cmake
+, qtbase
+, qtmultimedia
+, qtx11extras
+, qttools
+, libidn
+, qca-qt5
+, libXScrnSaver
+, hunspell
+, libsecret
+, libgcrypt
+, libotr
+, html-tidy
+, libgpgerror
+, libsignal-protocol-c
 , usrsctp
+
+, chatType ? "basic" # See the assertion below for available options
+, qtwebkit
+, qtwebengine
+
+, enablePlugins ? true
+
+  # Voice messages
+, voiceMessagesSupport ? true
+, gst_all_1
+
+, enablePsiMedia ? false
+, pkg-config
 }:
 
+assert builtins.elem (lib.toLower chatType) [
+  "basic" # Basic implementation, no web stuff involved
+  "webkit" # Legacy one, based on WebKit (see https://wiki.qt.io/Qt_WebKit)
+  "webengine" # QtWebEngine (see https://wiki.qt.io/QtWebEngine)
+];
+
+assert enablePsiMedia -> enablePlugins;
+
 mkDerivation rec {
   pname = "psi-plus";
-  version = "1.5.1520";
+  version = "1.5.1549";
 
   src = fetchFromGitHub {
     owner = "psi-plus";
     repo = "psi-plus-snapshots";
     rev = version;
-    sha256 = "0cj811qv0n8xck2qrnps2ybzrpvyjqz7nxkyccpaivq6zxj6mc12";
+    sha256 = "0jpv6qzfg6xjwkrnci7fav27nxm174i9l5g4vmsbchqpwfk90z2m";
   };
 
   cmakeFlags = [
-    "-DENABLE_PLUGINS=ON"
+    "-DCHAT_TYPE=${chatType}"
+    "-DENABLE_PLUGINS=${if enablePlugins then "ON" else "OFF"}"
+    "-DBUILD_PSIMEDIA=${if enablePsiMedia then "ON" else "OFF"}"
   ];
 
-  nativeBuildInputs = [ cmake qttools ];
+  nativeBuildInputs = [
+    cmake
+    qttools
+  ] ++ lib.optionals enablePsiMedia [
+    pkg-config
+  ];
 
   buildInputs = [
-    qtbase qtmultimedia qtx11extras qtwebengine
-    libidn qca-qt5 libXScrnSaver hunspell
-    libsecret libgcrypt libotr html-tidy libgpgerror libsignal-protocol-c
+    qtbase
+    qtmultimedia
+    qtx11extras
+    libidn
+    qca-qt5
+    libXScrnSaver
+    hunspell
+    libsecret
+    libgcrypt
+    libotr
+    html-tidy
+    libgpgerror
+    libsignal-protocol-c
     usrsctp
+  ] ++ lib.optionals voiceMessagesSupport [
+    gst_all_1.gst-plugins-base
+    gst_all_1.gst-plugins-good
+  ] ++ lib.optionals (chatType == "webkit") [
+    qtwebkit
+  ] ++ lib.optionals (chatType == "webengine") [
+    qtwebengine
   ];
 
+  preFixup = lib.optionalString voiceMessagesSupport ''
+    qtWrapperArgs+=(
+      --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0"
+    )
+  '';
+
   meta = with lib; {
     homepage = "https://psi-plus.com";
     description = "XMPP (Jabber) client";
-    maintainers = with maintainers; [ orivej misuzu ];
+    maintainers = with maintainers; [ orivej misuzu unclechu ];
     license = licenses.gpl2Only;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/networking/instant-messengers/quaternion/default.nix b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
index f918cbdc2b8..31b37fc2dfb 100644
--- a/pkgs/applications/networking/instant-messengers/quaternion/default.nix
+++ b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
@@ -42,6 +42,5 @@ mkDerivation rec {
     license = licenses.gpl3;
     maintainers = with maintainers; [ peterhoeg ];
     inherit (qtbase.meta) platforms;
-    inherit version;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/salut-a-toi/requirements.nix b/pkgs/applications/networking/instant-messengers/salut-a-toi/requirements.nix
index 8277028ac7b..a8e711c447d 100644
--- a/pkgs/applications/networking/instant-messengers/salut-a-toi/requirements.nix
+++ b/pkgs/applications/networking/instant-messengers/salut-a-toi/requirements.nix
@@ -55,7 +55,7 @@ in {
       sha256 = "0rnshrzw8605x05mpd8ndrx3ri8h6cx713mp8sl4f04f4gcrz8ml";
     };
 
-    propagatedBuildInputs = with pythonPackages; [twisted dateutil];
+    propagatedBuildInputs = with pythonPackages; [twisted python-dateutil];
 
     meta = with lib; {
       description = "Some (mainly XMPP-related) additions to twisted";
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
index 616a0857102..daf1c476e67 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -28,7 +28,7 @@ let
       else "");
 in stdenv.mkDerivation rec {
   pname = "signal-desktop";
-  version = "5.4.1"; # Please backport all updates to the stable channel.
+  version = "5.9.0"; # Please backport all updates to the stable channel.
   # All releases have a limited lifetime and "expire" 90 days after the release.
   # When releases "expire" the application becomes unusable until an update is
   # applied. The expiration date for the current release can be extracted with:
@@ -38,7 +38,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
-    sha256 = "1f1narpqj8gcyi4r574nqm1cbyi3azk1y7d1j300scr51gk74fq6";
+    sha256 = "1pmyi9b0b5h6mi6dwml41x4igy8rfpsv6j67izh78m5gla8wp34h";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/slack/default.nix b/pkgs/applications/networking/instant-messengers/slack/default.nix
index 13778355211..39cff6de85d 100644
--- a/pkgs/applications/networking/instant-messengers/slack/default.nix
+++ b/pkgs/applications/networking/instant-messengers/slack/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ lib
+, stdenv
 , fetchurl
 , dpkg
 , undmg
@@ -19,6 +20,7 @@
 , glib
 , gnome2
 , gtk3
+, libGL
 , libappindicator-gtk3
 , libdrm
 , libnotify
@@ -42,29 +44,31 @@ let
 
   pname = "slack";
 
-  x86_64-darwin-version = "4.16.0";
-  x86_64-darwin-sha256 = "078f49sgazfa99vn0yyacfya3jl2vhqz7kgxh0qp56b66pnzwbxz";
+  x86_64-darwin-version = "4.17.0";
+  x86_64-darwin-sha256 = "0r5cafxw73qnn14ljprn7w8bfn67zbkcniq60k9pf2zbqgb4cyj9";
 
-  x86_64-linux-version = "4.16.0";
-  x86_64-linux-sha256 = "0dj5k7r044mibis0zymh6wryhbw2fzsch30nddfrnn6ij89hhirv";
+  x86_64-linux-version = "4.17.0";
+  x86_64-linux-sha256 = "07ccms58pq27ilkyhcf6cgwb7qrddwil5kgy8yv95ljikqzi5rxi";
 
   version = {
     x86_64-darwin = x86_64-darwin-version;
     x86_64-linux = x86_64-linux-version;
   }.${system} or throwSystem;
 
-  src = let
-    base = "https://downloads.slack-edge.com";
-  in {
-    x86_64-darwin = fetchurl {
-      url = "${base}/releases/macos/${version}/prod/x64/Slack-${version}-macOS.dmg";
-      sha256 = x86_64-darwin-sha256;
-    };
-    x86_64-linux = fetchurl {
-      url = "${base}/linux_releases/slack-desktop-${version}-amd64.deb";
-      sha256 = x86_64-linux-sha256;
-    };
-  }.${system} or throwSystem;
+  src =
+    let
+      base = "https://downloads.slack-edge.com";
+    in
+      {
+        x86_64-darwin = fetchurl {
+          url = "${base}/releases/macos/${version}/prod/x64/Slack-${version}-macOS.dmg";
+          sha256 = x86_64-darwin-sha256;
+        };
+        x86_64-linux = fetchurl {
+          url = "${base}/linux_releases/slack-desktop-${version}-amd64.deb";
+          sha256 = x86_64-linux-sha256;
+        };
+      }.${system} or throwSystem;
 
   meta = with lib; {
     description = "Desktop client for Slack";
@@ -95,6 +99,7 @@ let
       glib
       gnome2.GConf
       gtk3
+      libGL
       libappindicator-gtk3
       libdrm
       libnotify
@@ -118,13 +123,13 @@ let
       xorg.libXi
       xorg.libXrandr
       xorg.libXrender
-      xorg.libxshmfence
       xorg.libXtst
       xorg.libxkbfile
+      xorg.libxshmfence
     ] + ":${stdenv.cc.cc.lib}/lib64";
 
     buildInputs = [
-      gtk3  # needed for GSETTINGS_SCHEMAS_PATH
+      gtk3 # needed for GSETTINGS_SCHEMAS_PATH
     ];
 
     nativeBuildInputs = [ dpkg makeWrapper nodePackages.asar ];
@@ -153,7 +158,7 @@ let
       rm $out/bin/slack
       makeWrapper $out/lib/slack/slack $out/bin/slack \
         --prefix XDG_DATA_DIRS : $GSETTINGS_SCHEMAS_PATH \
-        --prefix PATH : ${xdg-utils}/bin
+        --prefix PATH : ${lib.makeBinPath [xdg-utils]}
 
       # Fix the desktop link
       substituteInPlace $out/share/applications/slack.desktop \
@@ -177,6 +182,7 @@ let
       /usr/bin/defaults write com.tinyspeck.slackmacgap SlackNoAutoUpdates -bool YES
     '';
   };
-in if stdenv.isDarwin
-  then darwin
-  else linux
+in
+if stdenv.isDarwin
+then darwin
+else linux
diff --git a/pkgs/applications/networking/instant-messengers/teams/default.nix b/pkgs/applications/networking/instant-messengers/teams/default.nix
index db8d4472b07..1267340c098 100644
--- a/pkgs/applications/networking/instant-messengers/teams/default.nix
+++ b/pkgs/applications/networking/instant-messengers/teams/default.nix
@@ -12,7 +12,9 @@
 , coreutils
 , gawk
 , xdg-utils
-, systemd }:
+, systemd
+, nodePackages
+, enableRectOverlay ? false }:
 
 stdenv.mkDerivation rec {
   pname = "teams";
@@ -23,7 +25,7 @@ stdenv.mkDerivation rec {
     sha256 = "1kx4j837fd344zy90nl0j3r8cdvihy6i6gf56wd5n56zngx1fhjv";
   };
 
-  nativeBuildInputs = [ dpkg autoPatchelfHook wrapGAppsHook ];
+  nativeBuildInputs = [ dpkg autoPatchelfHook wrapGAppsHook nodePackages.asar ];
 
   unpackCmd = "dpkg -x $curSrc .";
 
@@ -39,11 +41,27 @@ stdenv.mkDerivation rec {
   ];
 
   preFixup = ''
-    gappsWrapperArgs+=(--prefix PATH : "${coreutils}/bin:${gawk}/bin:${xdg-utils}/bin")
+    gappsWrapperArgs+=(--prefix PATH : "${coreutils}/bin:${gawk}/bin")
     gappsWrapperArgs+=(--add-flags --disable-namespace-sandbox)
     gappsWrapperArgs+=(--add-flags --disable-setuid-sandbox)
   '';
 
+
+  buildPhase = ''
+    runHook preBuild
+
+    asar extract share/teams/resources/app.asar "$TMP/work"
+    substituteInPlace $TMP/work/main.bundle.js \
+        --replace "/usr/share/pixmaps/" "$out/share/pixmaps" \
+        --replace "/usr/bin/xdg-mime" "${xdg-utils}/bin/xdg-mime" \
+        --replace "Exec=/usr/bin/" "Exec=" # Remove usage of absolute path in autostart.
+    asar pack --unpack='{*.node,*.ftz,rect-overlay}' "$TMP/work" share/teams/resources/app.asar
+
+    runHook postBuild
+  '';
+
+  preferLocalBuild = true;
+
   installPhase = ''
     runHook preInstall
 
@@ -57,9 +75,11 @@ stdenv.mkDerivation rec {
 
     ln -s $out/opt/teams/teams $out/bin/
 
+    ${lib.optionalString (!enableRectOverlay) ''
     # Work-around screen sharing bug
     # https://docs.microsoft.com/en-us/answers/questions/42095/sharing-screen-not-working-anymore-bug.html
     rm $out/opt/teams/resources/app.asar.unpacked/node_modules/slimcore/bin/rect-overlay
+    ''}
 
     runHook postInstall
   '';
diff --git a/pkgs/applications/networking/instant-messengers/teamspeak/server.nix b/pkgs/applications/networking/instant-messengers/teamspeak/server.nix
index daa97b68217..44430ef62e2 100644
--- a/pkgs/applications/networking/instant-messengers/teamspeak/server.nix
+++ b/pkgs/applications/networking/instant-messengers/teamspeak/server.nix
@@ -4,13 +4,13 @@ let
   arch = if stdenv.is64bit then "amd64" else "x86";
 in stdenv.mkDerivation rec {
   pname = "teamspeak-server";
-  version = "3.13.5";
+  version = "3.13.6";
 
   src = fetchurl {
     url = "https://files.teamspeak-services.com/releases/server/${version}/teamspeak3-server_linux_${arch}-${version}.tar.bz2";
     sha256 = if stdenv.is64bit
-      then "sha256-2tSX/ET2lZsi0mVB3KnbnBXMSTRsneGUA8w6mZ6TmlY="
-      else "sha256-RdxG4nGXTTSY+P5oZu4uP5l7gKcU9C6uIILyNldSK50=";
+      then "sha256-U3BNJ4Jjhd39gD7iMsHT8CGtm/GFQDE2kYQa2btyK+w="
+      else "sha256-8UKiFedv6w5bmqNvo3AXwQnUROwbZnU0ZTh9V17zmxQ=";
   };
 
   buildInputs = [ stdenv.cc.cc postgresql.lib ];
diff --git a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix
index 02330d11078..d9f9cd91a52 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix
@@ -11,7 +11,7 @@
 with lib;
 
 let
-  tg_owt = callPackage ../tdesktop/tg_owt.nix {};
+  tg_owt = callPackage ./tg_owt.nix {};
 in mkDerivation rec {
   pname = "kotatogram-desktop";
   version = "1.4.1";
diff --git a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix
new file mode 100644
index 00000000000..614183b72d0
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/tg_owt.nix
@@ -0,0 +1,36 @@
+{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, ninja, yasm
+, libjpeg, openssl, libopus, ffmpeg, alsa-lib, libpulseaudio, protobuf
+, xorg, libXtst
+}:
+
+let
+  rev = "2d804d2c9c5d05324c8ab22f2e6ff8306521b3c3";
+  sha256 = "0kz0i381iwsgcc3yzsq7njx3gkqja4bb9fsgc24vhg0md540qhyn";
+
+in stdenv.mkDerivation {
+  pname = "tg_owt";
+  version = "git-${rev}";
+
+  src = fetchFromGitHub {
+    owner = "desktop-app";
+    repo = "tg_owt";
+    inherit rev sha256;
+    fetchSubmodules = true;
+  };
+
+  outputs = [ "out" "dev" ];
+
+  nativeBuildInputs = [ pkg-config cmake ninja yasm ];
+
+  buildInputs = [
+    libjpeg openssl libopus ffmpeg alsa-lib libpulseaudio protobuf
+    xorg.libX11 libXtst
+  ];
+
+  cmakeFlags = [
+    # Building as a shared library isn't officially supported and currently broken:
+    "-DBUILD_SHARED_LIBS=OFF"
+  ];
+
+  meta.license = lib.licenses.bsd3;
+}
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
index acdf4e660c7..47aa7c7330f 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
@@ -1,8 +1,9 @@
-{ mkDerivation, lib, fetchurl, fetchpatch, callPackage
+{ mkDerivation, lib, fetchFromGitHub, callPackage
 , pkg-config, cmake, ninja, python3, wrapGAppsHook, wrapQtAppsHook, removeReferencesTo
-, qtbase, qtimageformats, gtk3, libsForQt5, enchant2, lz4, xxHash
-, dee, ffmpeg, openalSoft, minizip, libopus, alsa-lib, libpulseaudio, range-v3
-, tl-expected, hunspell, glibmm, webkitgtk, libtgvoip
+, qtbase, qtimageformats, gtk3, libsForQt5, lz4, xxHash
+, ffmpeg, openalSoft, minizip, libopus, alsa-lib, libpulseaudio, range-v3
+, tl-expected, hunspell, glibmm, webkitgtk
+, libtgvoip, rnnoise, abseil-cpp, extra-cmake-modules
 # Transitive dependencies:
 , pcre, xorg, util-linux, libselinux, libsepol, epoxy
 , at-spi2-core, libXtst, libthai, libdatrie
@@ -22,29 +23,19 @@ let
   tg_owt = callPackage ./tg_owt.nix {};
 in mkDerivation rec {
   pname = "telegram-desktop";
-  version = "2.7.5";
+  version = "2.8.4";
+  # Note: Update via pkgs/applications/networking/instant-messengers/telegram/tdesktop/update.py
 
   # Telegram-Desktop with submodules
-  src = fetchurl {
-    url = "https://github.com/telegramdesktop/tdesktop/releases/download/v${version}/tdesktop-${version}-full.tar.gz";
-    sha256 = "sha256-9GxBw5ii9Musjq7D3KMf/P5BA4h690EgXRbhynHwO98=";
+  src = fetchFromGitHub {
+    owner = "telegramdesktop";
+    repo = "tdesktop";
+    rev = "v${version}";
+    fetchSubmodules = true;
+    sha256 = "sha256-IN3GQgdNM66/GxKa5EGKB/LIkgBxS8Y4mkPBaSEphmw=";
   };
 
-  patches = [
-    # fixes issue with ffmpeg>=4.4 crashes, hasn't been upstreamed yet
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/gentoo/gentoo/1c91884873968997be4b0c954169d04dc839f1db/net-im/telegram-desktop/files/tdesktop-2.7.4-voice-crash.patch";
-      sha256 = "sha256-inLXcP70yJlkkmdeXlc3HRL7Vt+Sf00LLJG33gwBKdY=";
-    })
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/gentoo/gentoo/1c91884873968997be4b0c954169d04dc839f1db/net-im/telegram-desktop/files/tdesktop-2.7.4-voice-ffmpeg44.patch";
-      sha256 = "sha256-p57LipNf7BDhVvNKRuicVqx0vU6IBL/Cvr5BAfLF4Hs=";
-    })
-  ];
-
   postPatch = ''
-    substituteInPlace Telegram/lib_spellcheck/spellcheck/platform/linux/linux_enchant.cpp \
-      --replace '"libenchant-2.so.2"' '"${enchant2}/lib/libenchant-2.so.2"'
     substituteInPlace Telegram/CMakeLists.txt \
       --replace '"''${TDESKTOP_LAUNCHER_BASENAME}.appdata.xml"' '"''${TDESKTOP_LAUNCHER_BASENAME}.metainfo.xml"'
   '';
@@ -56,10 +47,11 @@ in mkDerivation rec {
   nativeBuildInputs = [ pkg-config cmake ninja python3 wrapGAppsHook wrapQtAppsHook removeReferencesTo ];
 
   buildInputs = [
-    qtbase qtimageformats gtk3 libsForQt5.kwayland libsForQt5.libdbusmenu enchant2 lz4 xxHash
-    dee ffmpeg openalSoft minizip libopus alsa-lib libpulseaudio range-v3
+    qtbase qtimageformats gtk3 libsForQt5.kwayland libsForQt5.libdbusmenu lz4 xxHash
+    ffmpeg openalSoft minizip libopus alsa-lib libpulseaudio range-v3
     tl-expected hunspell glibmm webkitgtk
-    tg_owt libtgvoip
+    libtgvoip rnnoise abseil-cpp extra-cmake-modules
+    tg_owt
     # Transitive dependencies:
     pcre xorg.libpthreadstubs xorg.libXdmcp util-linux libselinux libsepol epoxy
     at-spi2-core libXtst libthai libdatrie libsysprof-capture libpsl brotli
@@ -104,6 +96,7 @@ in mkDerivation rec {
 
   passthru = {
     inherit tg_owt;
+    updateScript = ./update.py;
   };
 
   meta = {
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix
index 614183b72d0..46076bca68c 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix
@@ -1,20 +1,20 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, ninja, yasm
+{ lib, stdenv, fetchFromGitHub, fetchpatch
+, pkg-config, cmake, ninja, yasm
 , libjpeg, openssl, libopus, ffmpeg, alsa-lib, libpulseaudio, protobuf
-, xorg, libXtst
+, xorg, libXtst, libXcomposite, libXdamage, libXext, libXrender, libXrandr
+, glib, abseil-cpp, pcre, util-linuxMinimal, libselinux, libsepol, pipewire
+, libXi
 }:
 
-let
-  rev = "2d804d2c9c5d05324c8ab22f2e6ff8306521b3c3";
-  sha256 = "0kz0i381iwsgcc3yzsq7njx3gkqja4bb9fsgc24vhg0md540qhyn";
-
-in stdenv.mkDerivation {
+stdenv.mkDerivation {
   pname = "tg_owt";
-  version = "git-${rev}";
+  version = "unstable-2021-06-27";
 
   src = fetchFromGitHub {
     owner = "desktop-app";
     repo = "tg_owt";
-    inherit rev sha256;
+    rev = "91d836dc84a16584c6ac52b36c04c0de504d9c34";
+    sha256 = "1ir4svv5mijpzr0rmx65088iikck83vhcdqrpf9dnk6yp4j9v4v2";
     fetchSubmodules = true;
   };
 
@@ -24,7 +24,9 @@ in stdenv.mkDerivation {
 
   buildInputs = [
     libjpeg openssl libopus ffmpeg alsa-lib libpulseaudio protobuf
-    xorg.libX11 libXtst
+    xorg.libX11 libXtst libXcomposite libXdamage libXext libXrender libXrandr
+    glib abseil-cpp pcre util-linuxMinimal libselinux libsepol pipewire
+    libXi
   ];
 
   cmakeFlags = [
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/update.py b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/update.py
new file mode 100755
index 00000000000..8f39533e298
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/update.py
@@ -0,0 +1,77 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -i python3 -p python3 nix nix-prefetch-git
+
+import fileinput
+import json
+import os
+import re
+import subprocess
+
+from datetime import datetime
+from urllib.request import urlopen, Request
+
+
+DIR = os.path.dirname(os.path.abspath(__file__))
+HEADERS = {'Accept': 'application/vnd.github.v3+json'}
+
+
+def github_api_request(endpoint):
+    base_url = 'https://api.github.com/'
+    request = Request(base_url + endpoint, headers=HEADERS)
+    with urlopen(request) as http_response:
+        return json.loads(http_response.read().decode('utf-8'))
+
+
+def get_commit_date(repo, sha):
+    url = f'https://api.github.com/repos/{repo}/commits/{sha}'
+    request = Request(url, headers=HEADERS)
+    with urlopen(request) as http_response:
+        commit = json.loads(http_response.read().decode())
+        date = commit['commit']['committer']['date'].rstrip('Z')
+        date = datetime.fromisoformat(date).date().isoformat()
+        return 'unstable-' + date
+
+
+def nix_prefetch_git(url, rev):
+    """Prefetches the requested Git revision (incl. submodules) of the given repository URL."""
+    print(f'nix-prefetch-git {url} {rev}')
+    out = subprocess.check_output(['nix-prefetch-git', '--quiet', '--url', url, '--rev', rev, '--fetch-submodules'])
+    return json.loads(out)['sha256']
+
+
+def nix_prefetch_url(url, unpack=False):
+    """Prefetches the content of the given URL."""
+    print(f'nix-prefetch-url {url}')
+    options = ['--type', 'sha256']
+    if unpack:
+        options += ['--unpack']
+    out = subprocess.check_output(['nix-prefetch-url'] + options + [url])
+    return out.decode('utf-8').rstrip()
+
+
+def update_file(relpath, version, sha256, rev=None):
+    file_path = os.path.join(DIR, relpath)
+    with fileinput.FileInput(file_path, inplace=True) as f:
+        for line in f:
+            result = line
+            result = re.sub(r'^  version = ".+";', f'  version = "{version}";', result)
+            result = re.sub(r'^    sha256 = ".+";', f'    sha256 = "{sha256}";', result)
+            if rev:
+                result = re.sub(r'^    rev = ".*";', f'    rev = "{rev}";', result)
+            print(result, end='')
+
+
+if __name__ == "__main__":
+    tdesktop_tag = github_api_request('repos/telegramdesktop/tdesktop/releases/latest')['tag_name']
+    tdesktop_version = tdesktop_tag.lstrip('v')
+    tdesktop_hash = nix_prefetch_git('https://github.com/telegramdesktop/tdesktop.git', tdesktop_tag)
+    update_file('default.nix', tdesktop_version, tdesktop_hash)
+    tg_owt_ref = github_api_request('repos/desktop-app/tg_owt/commits/master')['sha']
+    tg_owt_version = get_commit_date('desktop-app/tg_owt', tg_owt_ref)
+    tg_owt_hash = nix_prefetch_git('https://github.com/desktop-app/tg_owt.git', tg_owt_ref)
+    update_file('tg_owt.nix', tg_owt_version, tg_owt_hash, tg_owt_ref)
+    tg_owt_ref = github_api_request('repos/desktop-app/tg_owt/commits/master')['sha']
+    libtgvoip_ref = github_api_request(f'repos/telegramdesktop/tdesktop/contents/Telegram/ThirdParty/libtgvoip?ref={tdesktop_tag}')['sha']
+    libtgvoip_version = get_commit_date('telegramdesktop/libtgvoip', libtgvoip_ref)
+    libtgvoip_hash = nix_prefetch_url(f'https://github.com/telegramdesktop/libtgvoip/archive/{libtgvoip_ref}.tar.gz', unpack=True)
+    update_file('../../../../../development/libraries/libtgvoip/default.nix', libtgvoip_version, libtgvoip_hash, libtgvoip_ref)
diff --git a/pkgs/applications/networking/instant-messengers/tensor/default.nix b/pkgs/applications/networking/instant-messengers/tensor/default.nix
index 3969627a67a..5bbdc6460c6 100644
--- a/pkgs/applications/networking/instant-messengers/tensor/default.nix
+++ b/pkgs/applications/networking/instant-messengers/tensor/default.nix
@@ -60,6 +60,5 @@ mkDerivation rec {
     license = licenses.gpl3;
     maintainers = with maintainers; [ peterhoeg ];
     inherit (qtbase.meta) platforms;
-    inherit version;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/vk-cli/default.nix b/pkgs/applications/networking/instant-messengers/vk-cli/default.nix
new file mode 100644
index 00000000000..e1b3cc4f775
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/vk-cli/default.nix
@@ -0,0 +1,55 @@
+{ stdenv
+, lib
+, fetchurl
+, curl
+, zulip
+, p7zip
+, glibc
+, ncurses
+, openssl
+}:
+
+stdenv.mkDerivation rec {
+  pname = "vk-cli";
+  version = "0.7.6";
+
+  src = fetchurl {
+    url = "https://github.com/vk-cli/vk/releases/download/${version}/vk-${version}-64-bin.7z";
+    sha256 = "sha256-Y40oLjddunrd7ZF1JbCcgjSCn8jFTubq69jhAVxInXw=";
+  };
+
+  nativeBuildInputs = [
+    p7zip
+  ];
+
+  buildInputs = [
+    curl
+    ncurses
+    openssl
+  ];
+
+  unpackPhase = ''
+    mkdir -p $TMP/
+    7z x $src -o$TMP/
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin/
+    mv $TMP/vk-${version}-64-bin vk-cli
+    install -D vk-cli --target-directory=$out/bin/
+  '';
+
+  postFixup = ''
+    patchelf $out/bin/vk-cli \
+      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+      --set-rpath "${lib.makeLibraryPath [ curl zulip glibc ]}"
+  '';
+
+  meta = with lib; {
+    description = "A console (ncurses) client for vk.com written in D";
+    homepage = "https://github.com/vk-cli/vk";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ dan4ik605743 ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
index 3a22ea0681e..fc8fbdcede3 100644
--- a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
@@ -22,13 +22,13 @@ let
   pname = "wire-desktop";
 
   version = {
-    x86_64-darwin = "3.25.4095";
-    x86_64-linux = "3.25.2940";
+    x86_64-darwin = "3.26.4145";
+    x86_64-linux = "3.26.2941";
   }.${system} or throwSystem;
 
   sha256 = {
-    x86_64-darwin = "01gbmbxs3w7lwsy5wjpr7fgqkb20rj5fv1r3dsmjkfwy45pd835j";
-    x86_64-linux = "1vb2fy8hijjp0193d32d8hw7h00w6wympf3zc96skk8hz3ks6xz8";
+    x86_64-darwin = "1ck74a9z2mrwmljrqm347bqhjiaf1v0bf1jfnp58cqngh5ygqnf2";
+    x86_64-linux = "01gy84gr0gw5ap7hpy72azaf6hlzac7vxkn5cgad5sfbyzxgjgc9";
   }.${system} or throwSystem;
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
index 16846580714..78cfa89e6d4 100644
--- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
+++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
@@ -29,11 +29,11 @@
 assert pulseaudioSupport -> libpulseaudio != null;
 
 let
-  version = "5.6.22045.0607";
+  version = "5.7.26030.0627";
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://zoom.us/client/${version}/zoom_x86_64.pkg.tar.xz";
-      sha256 = "0zdk02zq9apxnfbxwnlda9z8nqkqa1h1javbh9wwj8yy3y3a1lb5";
+      sha256 = "1nooaafH+ajRtdrknXmFPclC4fJMpRTo+gBsaPHYfT0=";
     };
   };