about 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/SkypeExport/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/abaddon/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/beeper/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/bitlbee/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/briar-desktop/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/chatterino2/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/chatty/default.nix7
-rw-r--r--pkgs/applications/networking/instant-messengers/cordless/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/coyim/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/dino/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/discord-screenaudio/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-desktop.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/element/pin.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/feishu/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/flare-signal/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/freetalk/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/go-neb/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/gomuks/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/gurk-rs/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/iamb/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/jackline/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/jami/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/jitsi/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/kaidan/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/kdeltachat/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/linphone/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/matrix-commander/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/matrix-dl/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix11
-rw-r--r--pkgs/applications/networking/instant-messengers/mcabber/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/mm/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/nchat/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/neosay/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/pantalaimon/default.nix68
-rw-r--r--pkgs/applications/networking/instant-messengers/profanity/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/psi-plus/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/psi/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/qtox/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/quaternion/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/ratox/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/seren/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/session-desktop/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-cli/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-beta.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix5
-rw-r--r--pkgs/applications/networking/instant-messengers/signaldctl/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/silc-client/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/ssh-chat/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/tangram/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/teamspeak/client.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/tg/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/tensor/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/threema-desktop/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/toxic/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/turses/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/twitch-tui/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/utox/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/vk-cli/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/webcord/default.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/webex/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/xmppc/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/ytalk/default.nix1
-rw-r--r--pkgs/applications/networking/instant-messengers/zoom-us/default.nix12
69 files changed, 146 insertions, 75 deletions
diff --git a/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix b/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix
index f402faf965be..de70f49fe604 100644
--- a/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix
+++ b/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix
@@ -27,6 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Export Skype history to HTML";
+    mainProgram = "SkypeExport";
     homepage = "https://github.com/Temptin/SkypeExport";
     license = licenses.gpl2;
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/instant-messengers/abaddon/default.nix b/pkgs/applications/networking/instant-messengers/abaddon/default.nix
index 3dbab9211dfa..7101bba8d196 100644
--- a/pkgs/applications/networking/instant-messengers/abaddon/default.nix
+++ b/pkgs/applications/networking/instant-messengers/abaddon/default.nix
@@ -77,6 +77,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A discord client reimplementation, written in C++";
+    mainProgram = "abaddon";
     homepage = "https://github.com/uowuo/abaddon";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ genericnerdyusername ];
diff --git a/pkgs/applications/networking/instant-messengers/beeper/default.nix b/pkgs/applications/networking/instant-messengers/beeper/default.nix
index f5363ee4cb63..ce49c9e8c29a 100644
--- a/pkgs/applications/networking/instant-messengers/beeper/default.nix
+++ b/pkgs/applications/networking/instant-messengers/beeper/default.nix
@@ -11,11 +11,11 @@
 }:
 let
   pname = "beeper";
-  version = "3.99.22";
+  version = "3.100.26";
   name = "${pname}-${version}";
   src = fetchurl {
-    url = "https://download.todesktop.com/2003241lzgn20jd/beeper-3.99.22-build-240307lufv3wsra-x86_64.AppImage";
-    hash = "sha256-T3MABc11rWRjCU+4fvbpYDVq4XjSVfEeBrS03ITw8x8=";
+    url = "https://download.todesktop.com/2003241lzgn20jd/beeper-3.100.26-build-240314pjsp57xom-x86_64.AppImage";
+    hash = "sha256-KYjB7ZfjoVf6UoXQvmtAqtD23JNQGqboNzXekAiJF7k=";
   };
   appimage = appimageTools.wrapType2 {
     inherit version pname src;
diff --git a/pkgs/applications/networking/instant-messengers/bitlbee/default.nix b/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
index 99ce3f8811ef..32b3096c3c66 100644
--- a/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
@@ -47,6 +47,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "IRC instant messaging gateway";
+    mainProgram = "bitlbee";
 
     longDescription = ''
       BitlBee brings IM (instant messaging) to IRC clients.  It's a
diff --git a/pkgs/applications/networking/instant-messengers/briar-desktop/default.nix b/pkgs/applications/networking/instant-messengers/briar-desktop/default.nix
index 4bdc8f7f6deb..c0fd454a2fd8 100644
--- a/pkgs/applications/networking/instant-messengers/briar-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/briar-desktop/default.nix
@@ -55,6 +55,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Decentalized and secure messnger";
+    mainProgram = "briar-desktop";
     homepage = "https://code.briarproject.org/briar/briar-desktop";
     license = licenses.gpl3;
     maintainers = with maintainers; [ onny ];
diff --git a/pkgs/applications/networking/instant-messengers/chatterino2/default.nix b/pkgs/applications/networking/instant-messengers/chatterino2/default.nix
index 4353c983320b..19c91baf9a43 100644
--- a/pkgs/applications/networking/instant-messengers/chatterino2/default.nix
+++ b/pkgs/applications/networking/instant-messengers/chatterino2/default.nix
@@ -21,6 +21,7 @@ stdenv.mkDerivation rec {
   '';
   meta = with lib; {
     description = "A chat client for Twitch chat";
+    mainProgram = "chatterino";
     longDescription = ''
       Chatterino is a chat client for Twitch chat. It aims to be an
       improved/extended version of the Twitch web chat. Chatterino 2 is
diff --git a/pkgs/applications/networking/instant-messengers/chatty/default.nix b/pkgs/applications/networking/instant-messengers/chatty/default.nix
index 9faecf609272..adacea2d019a 100644
--- a/pkgs/applications/networking/instant-messengers/chatty/default.nix
+++ b/pkgs/applications/networking/instant-messengers/chatty/default.nix
@@ -15,6 +15,7 @@
 , gnome-desktop
 , gspell
 , gtk4
+, gst_all_1
 , json-glib
 , libgcrypt
 , libadwaita
@@ -29,7 +30,7 @@
 
 stdenv.mkDerivation rec {
   pname = "chatty";
-  version = "0.8.1";
+  version = "0.8.2";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
@@ -37,7 +38,7 @@ stdenv.mkDerivation rec {
     repo = "Chatty";
     rev = "v${version}";
     fetchSubmodules = true;
-    hash = "sha256-5IkQnXAKl0duy/B6+z7PXYv5zxakxJCgQhWBw5wioWg=";
+    hash = "sha256-7SdoN9JjGwELOdISJwS1Afcydp/rE2uq/tHO/UrFKNU=";
   };
 
   nativeBuildInputs = [
@@ -58,6 +59,7 @@ stdenv.mkDerivation rec {
     gnome-desktop
     gspell
     gtk4
+    gst_all_1.gstreamer
     json-glib
     libgcrypt
     libadwaita
@@ -78,6 +80,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "XMPP and SMS messaging via libpurple and ModemManager";
+    mainProgram = "chatty";
     homepage = "https://gitlab.gnome.org/World/Chatty";
     changelog = "https://gitlab.gnome.org/World/Chatty/-/blob/${src.rev}/NEWS";
     license = licenses.gpl3Plus;
diff --git a/pkgs/applications/networking/instant-messengers/cordless/default.nix b/pkgs/applications/networking/instant-messengers/cordless/default.nix
index 01bd4ff50e4c..35c2c0dbffb3 100644
--- a/pkgs/applications/networking/instant-messengers/cordless/default.nix
+++ b/pkgs/applications/networking/instant-messengers/cordless/default.nix
@@ -18,6 +18,7 @@ buildGoModule rec {
   meta = with lib; {
     homepage = "https://github.com/Bios-Marcel/cordless";
     description = "Discord terminal client";
+    mainProgram = "cordless";
     license = licenses.bsd3;
     maintainers = with maintainers; [ colemickens ];
   };
diff --git a/pkgs/applications/networking/instant-messengers/coyim/default.nix b/pkgs/applications/networking/instant-messengers/coyim/default.nix
index 61fb4b43a033..8223f9598b61 100644
--- a/pkgs/applications/networking/instant-messengers/coyim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/coyim/default.nix
@@ -30,6 +30,7 @@ buildGoPackage rec {
 
   meta = with lib; {
     description = "a safe and secure chat client";
+    mainProgram = "coyim";
     homepage = "https://coy.im/";
     license = licenses.gpl3;
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
diff --git a/pkgs/applications/networking/instant-messengers/dino/default.nix b/pkgs/applications/networking/instant-messengers/dino/default.nix
index 879314a97f0e..258f75df4d10 100644
--- a/pkgs/applications/networking/instant-messengers/dino/default.nix
+++ b/pkgs/applications/networking/instant-messengers/dino/default.nix
@@ -121,6 +121,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Modern Jabber/XMPP Client using GTK/Vala";
+    mainProgram = "dino";
     homepage = "https://github.com/dino/dino";
     license = licenses.gpl3Plus;
     platforms = platforms.linux ++ platforms.darwin;
diff --git a/pkgs/applications/networking/instant-messengers/discord-screenaudio/default.nix b/pkgs/applications/networking/instant-messengers/discord-screenaudio/default.nix
index 44ef7cae84c7..bdbd550b6731 100644
--- a/pkgs/applications/networking/instant-messengers/discord-screenaudio/default.nix
+++ b/pkgs/applications/networking/instant-messengers/discord-screenaudio/default.nix
@@ -46,6 +46,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A custom discord client that supports streaming with audio on Linux";
+    mainProgram = "discord-screenaudio";
     homepage = "https://github.com/maltejur/discord-screenaudio";
     downloadPage = "https://github.com/maltejur/discord-screenaudio/releases";
     changelog = "https://github.com/maltejur/discord-screenaudio/releases/tag/v${version}";
diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
index 46a7f821446c..ffbee0f25f82 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
@@ -16,6 +16,7 @@
 , AppKit
 , CoreServices
 , desktopToDarwinBundle
+, libnotify
 , useKeytar ? true
 }:
 
@@ -77,7 +78,13 @@ stdenv.mkDerivation (finalAttrs: builtins.removeAttrs pinData [ "hashes" ] // {
     runHook postBuild
   '';
 
-  installPhase = ''
+  installPhase =
+    let
+      libPath = lib.makeLibraryPath [
+        libnotify
+      ];
+    in
+  ''
     runHook preInstall
 
     # resources
@@ -104,6 +111,7 @@ stdenv.mkDerivation (finalAttrs: builtins.removeAttrs pinData [ "hashes" ] // {
     # LD_PRELOAD workaround for sqlcipher not found: https://github.com/matrix-org/seshat/issues/102
     makeWrapper '${electron}/bin/electron' "$out/bin/${executableName}" \
       --set LD_PRELOAD ${sqlcipher}/lib/libsqlcipher.so \
+      --set LD_LIBRARY_PATH "${libPath}" \
       --add-flags "$out/share/element/electron" \
       --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
 
diff --git a/pkgs/applications/networking/instant-messengers/element/pin.nix b/pkgs/applications/networking/instant-messengers/element/pin.nix
index 19ea95b452ff..f6e239a89d71 100644
--- a/pkgs/applications/networking/instant-messengers/element/pin.nix
+++ b/pkgs/applications/networking/instant-messengers/element/pin.nix
@@ -1,9 +1,9 @@
 {
-  "version" = "1.11.59";
+  "version" = "1.11.61";
   "hashes" = {
-    "desktopSrcHash" = "sha256-dasRfLsa8Jc6Vyay02f6IytjvYs3xbSFB2fU5bxi79E=";
-    "desktopYarnHash" = "00jvid2li68ji1xkbbpdiy39fzvhmw7ypnr3x82wbqqafkc5vil6";
-    "webSrcHash" = "sha256-UpRRTPrNiFsqXKD072jXVIqS8ZiuKt/BUzx1oja90VA=";
-    "webYarnHash" = "1s9lp2dd3slpp70rrbmsbmzphm6fwglnrqwk9fgylzqa1ds8nfjd";
+    "desktopSrcHash" = "sha256-1Pq26e2ngcji7wieHNOQAWPFBKGLoeTRAKQ3Aqnn1jw=";
+    "desktopYarnHash" = "16psxfai8dyckm4xwrg5czv6l4163x2nlqqcdgly6axabllgacj1";
+    "webSrcHash" = "sha256-RJhZgwTMDLMt+ha0lxPwqiP5sipXIcGZfdPVgCxePH4=";
+    "webYarnHash" = "1vj3f2bml8jyjz6djzvw1hbrv7148wk8y9hwp323zf8n6y4rnk28";
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/feishu/default.nix b/pkgs/applications/networking/instant-messengers/feishu/default.nix
index 602df7626f0e..8900f26d90a4 100644
--- a/pkgs/applications/networking/instant-messengers/feishu/default.nix
+++ b/pkgs/applications/networking/instant-messengers/feishu/default.nix
@@ -63,13 +63,13 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "6.9.16";
+  version = "6.9.20";
   pname = "feishu";
-  packageHash = "fe01b99b"; # A hash value used in the download url
+  packageHash = "6085d1c4"; # A hash value used in the download url
 
   src = fetchurl {
     url = "https://sf3-cn.feishucdn.com/obj/ee-appcenter/${packageHash}/Feishu-linux_x64-${version}.deb";
-    hash = "sha256-+koH6/K0J8KCVaNGIVvmLmPn/Ttyc9WcNAp0f7PLkqg=";
+    hash = "sha256-kg5j/vWaCBUjnF983kk0ZMJ+inF5z5ctED9+ITuIn94=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/flare-signal/default.nix b/pkgs/applications/networking/instant-messengers/flare-signal/default.nix
index 9988352d1614..f21241e10b60 100644
--- a/pkgs/applications/networking/instant-messengers/flare-signal/default.nix
+++ b/pkgs/applications/networking/instant-messengers/flare-signal/default.nix
@@ -71,6 +71,7 @@ stdenv.mkDerivation rec {
   meta = {
     changelog = "https://gitlab.com/schmiddi-on-mobile/flare/-/blob/${src.rev}/CHANGELOG.md";
     description = "An unofficial Signal GTK client";
+    mainProgram = "flare";
     homepage = "https://gitlab.com/schmiddi-on-mobile/flare";
     license = lib.licenses.agpl3Plus;
     maintainers = with lib.maintainers; [ dotlambda ];
diff --git a/pkgs/applications/networking/instant-messengers/freetalk/default.nix b/pkgs/applications/networking/instant-messengers/freetalk/default.nix
index fdfbbc5b275b..e259c6b60f8d 100644
--- a/pkgs/applications/networking/instant-messengers/freetalk/default.nix
+++ b/pkgs/applications/networking/instant-messengers/freetalk/default.nix
@@ -23,6 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description =  "Console XMPP client";
+    mainProgram = "freetalk";
     license = licenses.gpl3Plus ;
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/instant-messengers/go-neb/default.nix b/pkgs/applications/networking/instant-messengers/go-neb/default.nix
index d1947825c42b..82cfb3126c86 100644
--- a/pkgs/applications/networking/instant-messengers/go-neb/default.nix
+++ b/pkgs/applications/networking/instant-messengers/go-neb/default.nix
@@ -23,6 +23,7 @@ buildGoModule {
   meta = with lib; {
     broken = stdenv.isDarwin;
     description = "Extensible matrix bot written in Go";
+    mainProgram = "go-neb";
     homepage = "https://github.com/matrix-org/go-neb";
     license = licenses.asl20;
     maintainers = with maintainers; [ hexa maralorn ];
diff --git a/pkgs/applications/networking/instant-messengers/gomuks/default.nix b/pkgs/applications/networking/instant-messengers/gomuks/default.nix
index d7fd40029843..e25a94d0bef8 100644
--- a/pkgs/applications/networking/instant-messengers/gomuks/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gomuks/default.nix
@@ -51,6 +51,7 @@ buildGoModule rec {
   meta = with lib; {
     homepage = "https://maunium.net/go/gomuks/";
     description = "A terminal based Matrix client written in Go";
+    mainProgram = "gomuks";
     license = licenses.agpl3Plus;
     maintainers = with maintainers; [ chvp emily ];
   };
diff --git a/pkgs/applications/networking/instant-messengers/gurk-rs/default.nix b/pkgs/applications/networking/instant-messengers/gurk-rs/default.nix
index 352fa1a511cd..63d8581aa766 100644
--- a/pkgs/applications/networking/instant-messengers/gurk-rs/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gurk-rs/default.nix
@@ -43,6 +43,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with lib; {
     description = "Signal Messenger client for terminal";
+    mainProgram = "gurk";
     homepage = "https://github.com/boxdot/gurk-rs";
     license = licenses.agpl3Only;
     maintainers = with maintainers; [ devhell ];
diff --git a/pkgs/applications/networking/instant-messengers/iamb/default.nix b/pkgs/applications/networking/instant-messengers/iamb/default.nix
index ea8351c74f66..6e4e5276e582 100644
--- a/pkgs/applications/networking/instant-messengers/iamb/default.nix
+++ b/pkgs/applications/networking/instant-messengers/iamb/default.nix
@@ -31,6 +31,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with lib; {
     description = "A Matrix client for Vim addicts";
+    mainProgram = "iamb";
     homepage = "https://github.com/ulyssa/iamb";
     changelog = "https://github.com/ulyssa/iamb/releases/tag/${src.rev}";
     license = licenses.asl20;
diff --git a/pkgs/applications/networking/instant-messengers/jackline/default.nix b/pkgs/applications/networking/instant-messengers/jackline/default.nix
index 2c86b3e86fa8..946b77512e17 100644
--- a/pkgs/applications/networking/instant-messengers/jackline/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jackline/default.nix
@@ -47,6 +47,7 @@ buildDunePackage rec {
   meta = with lib; {
     homepage = "https://github.com/hannesm/jackline";
     description = "minimalistic secure XMPP client in OCaml";
+    mainProgram = "jackline";
     license = licenses.bsd2;
     maintainers = with maintainers; [ sternenseemann ];
   };
diff --git a/pkgs/applications/networking/instant-messengers/jami/default.nix b/pkgs/applications/networking/instant-messengers/jami/default.nix
index 7acbd1b3b393..98b4b69e6929 100644
--- a/pkgs/applications/networking/instant-messengers/jami/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jami/default.nix
@@ -249,6 +249,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://jami.net/";
     description = "The free and universal communication platform that respects the privacy and freedoms of its users";
+    mainProgram = "jami";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.linsui ];
diff --git a/pkgs/applications/networking/instant-messengers/jitsi/default.nix b/pkgs/applications/networking/instant-messengers/jitsi/default.nix
index cb634f434d24..a9ee84fbbb95 100644
--- a/pkgs/applications/networking/instant-messengers/jitsi/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jitsi/default.nix
@@ -67,6 +67,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://desktop.jitsi.org/";
     description = "Open Source Video Calls and Chat";
+    mainProgram = "jitsi";
     sourceProvenance = with sourceTypes; [
       binaryBytecode
       binaryNativeCode
diff --git a/pkgs/applications/networking/instant-messengers/kaidan/default.nix b/pkgs/applications/networking/instant-messengers/kaidan/default.nix
index 5a242e9cd517..b710421adb4a 100644
--- a/pkgs/applications/networking/instant-messengers/kaidan/default.nix
+++ b/pkgs/applications/networking/instant-messengers/kaidan/default.nix
@@ -57,6 +57,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "User-friendly and modern chat app, using XMPP";
+    mainProgram = "kaidan";
     longDescription = ''
        Kaidan is a user-friendly and modern chat app for every device. It uses
        the open communication protocol XMPP (Jabber). Unlike other chat apps,
diff --git a/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix b/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
index 30d1ee2dcda8..955c20c2c6f6 100644
--- a/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
@@ -45,6 +45,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "Delta Chat client using Kirigami framework";
+    mainProgram = "kdeltachat";
     homepage = "https://git.sr.ht/~link2xt/kdeltachat";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ dotlambda ];
diff --git a/pkgs/applications/networking/instant-messengers/linphone/default.nix b/pkgs/applications/networking/instant-messengers/linphone/default.nix
index 1d930612e9f9..778e1dc9cf50 100644
--- a/pkgs/applications/networking/instant-messengers/linphone/default.nix
+++ b/pkgs/applications/networking/instant-messengers/linphone/default.nix
@@ -134,6 +134,7 @@ mkDerivation rec {
   meta = with lib; {
     homepage = "https://www.linphone.org/";
     description = "Open source SIP phone for voice/video calls and instant messaging";
+    mainProgram = "linphone";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ jluttine ];
diff --git a/pkgs/applications/networking/instant-messengers/matrix-commander/default.nix b/pkgs/applications/networking/instant-messengers/matrix-commander/default.nix
index 154803697873..54c485525d7e 100644
--- a/pkgs/applications/networking/instant-messengers/matrix-commander/default.nix
+++ b/pkgs/applications/networking/instant-messengers/matrix-commander/default.nix
@@ -55,6 +55,7 @@ buildPythonApplication rec {
 
   meta = with lib; {
     description = "Simple but convenient CLI-based Matrix client app for sending and receiving";
+    mainProgram = "matrix-commander";
     homepage = "https://github.com/8go/matrix-commander";
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/instant-messengers/matrix-dl/default.nix b/pkgs/applications/networking/instant-messengers/matrix-dl/default.nix
index 0b2be12ad0b3..b16b0bbd7c4e 100644
--- a/pkgs/applications/networking/instant-messengers/matrix-dl/default.nix
+++ b/pkgs/applications/networking/instant-messengers/matrix-dl/default.nix
@@ -25,6 +25,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = with lib; {
     description = "Download backlogs from Matrix as raw text";
+    mainProgram = "matrix-dl";
     homepage = src.meta.homepage;
     license = licenses.gpl1Plus;
     maintainers = with maintainers; [ aw ];
diff --git a/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix b/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix
index 7b9246300c06..ac9d1b136934 100644
--- a/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix
@@ -1,24 +1,24 @@
 { lib
 , stdenv
 , fetchurl
-, electron_27
+, electron_28
 , makeWrapper
 }:
 
 let
 
   pname = "mattermost-desktop";
-  version = "5.6.0";
+  version = "5.7.0";
 
   srcs = {
     "x86_64-linux" = {
       url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-x64.tar.gz";
-      hash = "sha256-KUF/zH18X+RS8AICBv53JTBpcaokzo92psyoQNmLF/Q=";
+      hash = "sha256-1xfU9+VzjhSVWsP1AYizphhQ2010GbQBgQ4dxvY3TBU=";
     };
 
     "aarch64-linux" = {
       url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-arm64.tar.gz";
-      hash = "sha256-Zl5PalAles39qSMtt1cytfu4Mheud4+8TTkt7Ohdf/o=";
+      hash = "sha256-RrH+R9IuokKK+zfmCmOt38hD1HvWJbKqmxTFhQ3RcqQ=";
     };
   };
 
@@ -52,7 +52,7 @@ stdenv.mkDerivation {
     substituteInPlace $out/share/applications/Mattermost.desktop \
       --replace /share/mattermost-desktop/mattermost-desktop /bin/mattermost-desktop
 
-    makeWrapper '${lib.getExe electron_27}' $out/bin/${pname} \
+    makeWrapper '${lib.getExe electron_28}' $out/bin/${pname} \
       --add-flags $out/share/${pname}/app.asar
 
     runHook postInstall
@@ -60,6 +60,7 @@ stdenv.mkDerivation {
 
   meta = with lib; {
     description = "Mattermost Desktop client";
+    mainProgram = "mattermost-desktop";
     homepage = "https://about.mattermost.com/";
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.asl20;
diff --git a/pkgs/applications/networking/instant-messengers/mcabber/default.nix b/pkgs/applications/networking/instant-messengers/mcabber/default.nix
index 3acd11a9a0d3..60ec25e5f172 100644
--- a/pkgs/applications/networking/instant-messengers/mcabber/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mcabber/default.nix
@@ -35,6 +35,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://mcabber.com/";
     description = "Small Jabber console client";
+    mainProgram = "mcabber";
     license = licenses.gpl2;
     maintainers = with maintainers; [ pSub ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/networking/instant-messengers/mm/default.nix b/pkgs/applications/networking/instant-messengers/mm/default.nix
index b6c48a0e948c..a4f17b6709d1 100644
--- a/pkgs/applications/networking/instant-messengers/mm/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mm/default.nix
@@ -14,6 +14,7 @@ buildGoModule {
 
   meta = with lib; {
     description = "A file system based matrix client";
+    mainProgram = "mm";
     homepage = "https://git.lost.host/meutraa/mm";
     license = licenses.isc;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/networking/instant-messengers/nchat/default.nix b/pkgs/applications/networking/instant-messengers/nchat/default.nix
index 51b704f5bc7b..0e3c7f6803fb 100644
--- a/pkgs/applications/networking/instant-messengers/nchat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/nchat/default.nix
@@ -36,6 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Terminal-based chat client with support for Telegram and WhatsApp";
+    mainProgram = "nchat";
     homepage = "https://github.com/d99kris/nchat";
     license = licenses.mit;
     maintainers = with maintainers; [ sikmir ];
diff --git a/pkgs/applications/networking/instant-messengers/neosay/default.nix b/pkgs/applications/networking/instant-messengers/neosay/default.nix
index 3f76bdade3a8..46ea22da5db8 100644
--- a/pkgs/applications/networking/instant-messengers/neosay/default.nix
+++ b/pkgs/applications/networking/instant-messengers/neosay/default.nix
@@ -20,6 +20,7 @@ buildGoModule rec {
 
   meta = with lib; {
     description = "Pipe stdin to matrix";
+    mainProgram = "neosay";
     homepage = "https://github.com/donuts-are-good/neosay";
     license = licenses.mit;
     maintainers = with maintainers; [ janik ];
diff --git a/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix b/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
index dbe944d189b6..5b5669a3a6a2 100644
--- a/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
@@ -1,31 +1,41 @@
-{ lib, stdenv, buildPythonApplication, fetchFromGitHub, pythonOlder,
-  attrs, aiohttp, appdirs, click, keyring, logbook, peewee, janus,
-  prompt-toolkit, matrix-nio, dbus-python, pydbus, notify2, pygobject3,
-  setuptools, installShellFiles, nixosTests,
-
-  pytest, faker, pytest-aiohttp, aioresponses,
-
-  enableDbusUi ? true
+{ lib
+, stdenv
+, python3Packages
+, fetchFromGitHub
+, installShellFiles
+, nixosTests
+, enableDbusUi ? true
 }:
 
-buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
   pname = "pantalaimon";
   version = "0.10.5";
-
-  disabled = pythonOlder "3.6";
+  pyproject = true;
 
   # pypi tarball miss tests
   src = fetchFromGitHub {
     owner = "matrix-org";
-    repo = pname;
+    repo = "pantalaimon";
     rev = version;
-    sha256 = "sha256-yMhE3wKRbFHoL0vdFR8gMkNU7Su4FHbAwKQYADaaWpk=";
+    hash = "sha256-yMhE3wKRbFHoL0vdFR8gMkNU7Su4FHbAwKQYADaaWpk=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    installShellFiles
+  ] ++ (with python3Packages; [
+    setuptools
+    pythonRelaxDepsHook
+  ]);
+
+  pythonRelaxDeps = [
+    "matrix-nio"
+  ];
+
+  dependencies = with python3Packages; [
     aiohttp
     appdirs
     attrs
+    cachetools
     click
     janus
     keyring
@@ -33,34 +43,28 @@ buildPythonApplication rec {
     matrix-nio
     peewee
     prompt-toolkit
-    setuptools
   ]
   ++ matrix-nio.optional-dependencies.e2e
-  ++ lib.optionals enableDbusUi [
-      dbus-python
-      notify2
-      pygobject3
-      pydbus
+  ++ lib.optionals enableDbusUi optional-dependencies.ui;
+
+  optional-dependencies.ui = with python3Packages; [
+    dbus-python
+    notify2
+    pygobject3
+    pydbus
   ];
 
-  nativeCheckInputs = [
-    pytest
+  nativeCheckInputs = with python3Packages; [
+    aioresponses
     faker
     pytest-aiohttp
-    aioresponses
-  ];
-
-  nativeBuildInputs = [
-    installShellFiles
-  ];
+    pytestCheckHook
+  ]
+  ++ lib.flatten (lib.attrValues optional-dependencies);
 
   # darwin has difficulty communicating with server, fails some integration tests
   doCheck = !stdenv.isDarwin;
 
-  checkPhase = ''
-    pytest
-  '';
-
   postInstall = ''
     installManPage docs/man/*.[1-9]
   '';
diff --git a/pkgs/applications/networking/instant-messengers/profanity/default.nix b/pkgs/applications/networking/instant-messengers/profanity/default.nix
index cb8b09c336db..cca91da3abda 100644
--- a/pkgs/applications/networking/instant-messengers/profanity/default.nix
+++ b/pkgs/applications/networking/instant-messengers/profanity/default.nix
@@ -92,6 +92,7 @@ stdenv.mkDerivation rec {
   meta =  with lib; {
     homepage = "http://www.profanity.im/";
     description = "A console based XMPP client";
+    mainProgram = "profanity";
     longDescription = ''
       Profanity is a console based XMPP client written in C using ncurses and
       libstrophe, inspired by Irssi.
diff --git a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
index 750ebe186bb8..295f92b9ef9a 100644
--- a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
+++ b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
@@ -99,6 +99,7 @@ mkDerivation rec {
   meta = with lib; {
     homepage = "https://psi-plus.com";
     description = "XMPP (Jabber) client based on Qt5";
+    mainProgram = "psi-plus";
     maintainers = with maintainers; [ orivej misuzu unclechu ];
     license = licenses.gpl2Only;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/psi/default.nix b/pkgs/applications/networking/instant-messengers/psi/default.nix
index 62b6c8f8e59c..7745fc9fc909 100644
--- a/pkgs/applications/networking/instant-messengers/psi/default.nix
+++ b/pkgs/applications/networking/instant-messengers/psi/default.nix
@@ -25,6 +25,7 @@ mkDerivation rec {
   meta = with lib; {
     homepage = "https://psi-im.org";
     description = "An XMPP (Jabber) client";
+    mainProgram = "psi";
     maintainers = [ maintainers.raskin ];
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/qtox/default.nix b/pkgs/applications/networking/instant-messengers/qtox/default.nix
index 8273a6fdbc6d..09240ae4713b 100644
--- a/pkgs/applications/networking/instant-messengers/qtox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/qtox/default.nix
@@ -69,6 +69,7 @@ mkDerivation rec {
   meta = with lib; {
     broken = stdenv.isDarwin;
     description = "Qt Tox client";
+    mainProgram = "qtox";
     homepage = "https://tox.chat";
     license = licenses.gpl3;
     maintainers = with maintainers; [ akaWolf peterhoeg ];
diff --git a/pkgs/applications/networking/instant-messengers/quaternion/default.nix b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
index 5111b7424f44..2a0bfce75631 100644
--- a/pkgs/applications/networking/instant-messengers/quaternion/default.nix
+++ b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
@@ -60,6 +60,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   meta = with lib; {
     description = "Cross-platform desktop IM client for the Matrix protocol";
+    mainProgram = "quaternion";
     homepage = "https://matrix.org/ecosystem/clients/quaternion/";
     license = licenses.gpl3;
     maintainers = with maintainers; [ peterhoeg ];
diff --git a/pkgs/applications/networking/instant-messengers/ratox/default.nix b/pkgs/applications/networking/instant-messengers/ratox/default.nix
index 5dcb22050763..4a80071a6cea 100644
--- a/pkgs/applications/networking/instant-messengers/ratox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ratox/default.nix
@@ -27,6 +27,7 @@ in stdenv.mkDerivation {
 
   meta = with lib; {
     description = "FIFO based tox client";
+    mainProgram = "ratox";
     homepage = "http://ratox.2f30.org/";
     license = licenses.isc;
     maintainers = with maintainers; [ ehmry ];
diff --git a/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix b/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix
index e46f5824af0f..737e867bf5a6 100644
--- a/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix
@@ -88,6 +88,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Official Desktop client for Rocket.Chat";
+    mainProgram = "rocketchat-desktop";
     homepage = "https://github.com/RocketChat/Rocket.Chat.Electron";
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.mit;
diff --git a/pkgs/applications/networking/instant-messengers/seren/default.nix b/pkgs/applications/networking/instant-messengers/seren/default.nix
index ed02def3eb88..590a0639dc84 100644
--- a/pkgs/applications/networking/instant-messengers/seren/default.nix
+++ b/pkgs/applications/networking/instant-messengers/seren/default.nix
@@ -21,6 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A simple ncurses VoIP program based on the Opus codec";
+    mainProgram = "seren";
     longDescription = ''
       Seren is a simple VoIP program based on the Opus codec
       that allows you to create a voice conference from the terminal, with up to 10
diff --git a/pkgs/applications/networking/instant-messengers/session-desktop/default.nix b/pkgs/applications/networking/instant-messengers/session-desktop/default.nix
index 9b2dc1e62ef3..bc0afb8b6883 100644
--- a/pkgs/applications/networking/instant-messengers/session-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/session-desktop/default.nix
@@ -57,6 +57,7 @@ stdenvNoCC.mkDerivation {
 
   meta = with lib; {
     description = "Onion routing based messenger";
+    mainProgram = "session-desktop";
     homepage = "https://getsession.org/";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ alexnortung ];
diff --git a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
index 4f8f972620ac..2f62a08f4625 100644
--- a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
@@ -47,6 +47,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/AsamK/signal-cli";
     description = "Command-line and dbus interface for communicating with the Signal messaging service";
+    mainProgram = "signal-cli";
     changelog = "https://github.com/AsamK/signal-cli/blob/v${version}/CHANGELOG.md";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ivan ];
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-beta.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-beta.nix
index 1df4202a5ccc..86f08b1067a1 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-beta.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-beta.nix
@@ -2,7 +2,7 @@
 callPackage ./generic.nix { } rec {
   pname = "signal-desktop-beta";
   dir = "Signal Beta";
-  version = "7.2.0-beta.1";
+  version = "7.4.0-beta.1";
   url = "https://updates.signal.org/desktop/apt/pool/s/signal-desktop-beta/signal-desktop-beta_${version}_amd64.deb";
-  hash = "sha256-ZCTCcNMrZwadAbs+1sf3A+S1FRjTCb1lYk0Vg5rxqXc=";
+  hash = "sha256-Pjz55iVBww7d7WIAonTeX+cdEobitltoAyOU79RY40c=";
 }
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix
index f262f2c97b6f..10ea168355b3 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix
@@ -2,7 +2,7 @@
 callPackage ./generic.nix { } rec {
   pname = "signal-desktop";
   dir = "Signal";
-  version = "7.1.1";
+  version = "7.2.1";
   url = "https://updates.signal.org/desktop/apt/pool/s/signal-desktop/signal-desktop_${version}_amd64.deb";
-  hash = "sha256-YQLDm6T67vio66PLehlLQDxsAkhm22dhpjUR1eBwsg8=";
+  hash = "sha256-IJ808xvPqGivccqH/mOMSHu/mU/JLFJ798UztwXWtm0=";
 }
diff --git a/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix b/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
index 631bc6b292f3..27d2c9a72b0e 100644
--- a/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "signalbackup-tools";
-  version = "20240306";
+  version = "20240319";
 
   src = fetchFromGitHub {
     owner = "bepaald";
     repo = pname;
     rev = version;
-    hash = "sha256-KN4FkqgWj92LqPtwU/Wyk1qe8AyUsWlobypq5WgRVyI=";
+    hash = "sha256-aDf7HId0A4GBiG3AJZLAtVEq54RywV/gx4Sa3c/KLg0=";
   };
 
   postPatch = ''
@@ -32,6 +32,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Tool to work with Signal Backup files";
+    mainProgram = "signalbackup-tools";
     homepage = "https://github.com/bepaald/signalbackup-tools";
     license = licenses.gpl3Only;
     maintainers = [ maintainers.malo ];
diff --git a/pkgs/applications/networking/instant-messengers/signaldctl/default.nix b/pkgs/applications/networking/instant-messengers/signaldctl/default.nix
index 82637dbbb0c9..d1c152013b57 100644
--- a/pkgs/applications/networking/instant-messengers/signaldctl/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signaldctl/default.nix
@@ -33,6 +33,7 @@ buildGoModule rec {
 
   meta = with lib; {
     description = "A golang library for communicating with signald";
+    mainProgram = "signaldctl";
     homepage = "https://signald.org/signaldctl/";
     license = licenses.gpl3;
     maintainers = with maintainers; [ colinsane ];
diff --git a/pkgs/applications/networking/instant-messengers/silc-client/default.nix b/pkgs/applications/networking/instant-messengers/silc-client/default.nix
index 417cb4dbb844..9dd94225acfe 100644
--- a/pkgs/applications/networking/instant-messengers/silc-client/default.nix
+++ b/pkgs/applications/networking/instant-messengers/silc-client/default.nix
@@ -31,6 +31,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "http://silcnet.org/";
     description = "Secure Internet Live Conferencing server";
+    mainProgram = "silc";
     license = lib.licenses.gpl2;
     maintainers = with lib.maintainers; [viric];
     platforms = with lib.platforms; linux;
diff --git a/pkgs/applications/networking/instant-messengers/ssh-chat/default.nix b/pkgs/applications/networking/instant-messengers/ssh-chat/default.nix
index 15ff9a9e2b50..425b0535e741 100644
--- a/pkgs/applications/networking/instant-messengers/ssh-chat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ssh-chat/default.nix
@@ -15,6 +15,7 @@ buildGoModule rec {
 
   meta = with lib; {
     description = "Chat over SSH";
+    mainProgram = "ssh-chat";
     homepage = "https://github.com/shazow/ssh-chat";
     license = licenses.mit;
     maintainers = with maintainers; [ luc65r ];
diff --git a/pkgs/applications/networking/instant-messengers/tangram/default.nix b/pkgs/applications/networking/instant-messengers/tangram/default.nix
index df460db31664..c32e55ffde4e 100644
--- a/pkgs/applications/networking/instant-messengers/tangram/default.nix
+++ b/pkgs/applications/networking/instant-messengers/tangram/default.nix
@@ -82,6 +82,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Run web apps on your desktop";
+    mainProgram = "re.sonny.Tangram";
     homepage = "https://github.com/sonnyp/Tangram";
     license = licenses.gpl3Only;
     platforms = platforms.linux;
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 0f9581ee78d3..0d430af0894c 100644
--- a/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix
@@ -101,6 +101,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   meta = {
     description = "Unofficial Microsoft Teams client for Linux";
+    mainProgram = "teams-for-linux";
     homepage = "https://github.com/IsmaelMartinez/teams-for-linux";
     license = lib.licenses.gpl3Only;
     maintainers = with lib.maintainers; [ muscaln lilyinstarlight qjoly chvp ];
diff --git a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
index a0c7b678d5a0..45197d2d7086 100644
--- a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
+++ b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
@@ -13,7 +13,7 @@ let
     [ zlib glib libpng freetype xorg.libSM xorg.libICE xorg.libXrender openssl
       xorg.libXrandr xorg.libXfixes xorg.libXcursor xorg.libXinerama
       xorg.libxcb fontconfig xorg.libXext xorg.libX11 alsa-lib qtbase qtwebengine qtwebchannel qtsvg
-      qtwebsockets libpulseaudio quazip llvmPackages.libcxx llvmPackages.libcxxabi
+      qtwebsockets libpulseaudio quazip llvmPackages.libcxx
     ];
 
   desktopItem = makeDesktopItem {
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 dbd81911501e..f0732ec03920 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix
@@ -209,6 +209,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Kotatogram – experimental Telegram Desktop fork";
+    mainProgram = "kotatogram-desktop";
     longDescription = ''
       Unofficial desktop client for the Telegram messenger, based on Telegram Desktop.
 
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tg/default.nix b/pkgs/applications/networking/instant-messengers/telegram/tg/default.nix
index f0c054fd7a90..7cdbda355d38 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tg/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tg/default.nix
@@ -40,6 +40,7 @@ buildPythonApplication rec {
 
   meta = with lib; {
     description = "Terminal client for telegram";
+    mainProgram = "tg";
     homepage = "https://github.com/paul-nameless/tg";
     license = licenses.unlicense;
     maintainers = with maintainers; [ sikmir ];
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix
index ed2723c0435c..dc4b11caf0b9 100644
--- a/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix
@@ -31,6 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Jabber/XMPP connection manager for the Telepathy framework";
+    mainProgram = "telepathy-gabble-xmpp-console";
     homepage = "https://telepathy.freedesktop.org/components/telepathy-gabble/";
     license = licenses.lgpl21Plus;
     platforms = lib.platforms.unix;
diff --git a/pkgs/applications/networking/instant-messengers/tensor/default.nix b/pkgs/applications/networking/instant-messengers/tensor/default.nix
index ffa603fb80b1..c8b38ccb35ec 100644
--- a/pkgs/applications/networking/instant-messengers/tensor/default.nix
+++ b/pkgs/applications/networking/instant-messengers/tensor/default.nix
@@ -62,6 +62,7 @@ mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/davidar/tensor";
     description = "Cross-platform Qt5/QML-based Matrix client";
+    mainProgram = "tensor";
     license = licenses.gpl3;
     maintainers = with maintainers; [ peterhoeg ];
     inherit (qtbase.meta) platforms;
diff --git a/pkgs/applications/networking/instant-messengers/threema-desktop/default.nix b/pkgs/applications/networking/instant-messengers/threema-desktop/default.nix
index 0cb8cc4ff2e5..fc796ac7a349 100644
--- a/pkgs/applications/networking/instant-messengers/threema-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/threema-desktop/default.nix
@@ -46,6 +46,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Desktop client for Threema, a privacy-focused end-to-end encrypted mobile messenger";
+    mainProgram = "threema";
     homepage = "https://threema.ch";
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.agpl3Only;
diff --git a/pkgs/applications/networking/instant-messengers/toxic/default.nix b/pkgs/applications/networking/instant-messengers/toxic/default.nix
index 2f16cb78454f..bd3f30adc688 100644
--- a/pkgs/applications/networking/instant-messengers/toxic/default.nix
+++ b/pkgs/applications/networking/instant-messengers/toxic/default.nix
@@ -25,6 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; src.meta // {
     description = "Reference CLI for Tox";
+    mainProgram = "toxic";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ ehmry ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/turses/default.nix b/pkgs/applications/networking/instant-messengers/turses/default.nix
index 240931065e6c..19e50f3fe8bf 100644
--- a/pkgs/applications/networking/instant-messengers/turses/default.nix
+++ b/pkgs/applications/networking/instant-messengers/turses/default.nix
@@ -87,6 +87,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "A Twitter client for the console";
+    mainProgram = "turses";
     homepage = "https://github.com/louipc/turses";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix b/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix
index 982b41b27946..4b4ce6f1f9b3 100644
--- a/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix
+++ b/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "twitch-tui";
-  version = "2.6.5";
+  version = "2.6.6";
 
   src = fetchFromGitHub {
     owner = "Xithrius";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-eJw3C38+FdiMLE+x+akIo8c/VqsbWVbcGJj1Lb2vImE=";
+    hash = "sha256-71VpLTPOqSEosLt3noiWhsFPpIp7n3S3BHhIzWYGwkI=";
   };
 
-  cargoHash = "sha256-zhRrZr5RXKhjZCIjN3lRJ8BJlW/zxKJUzWtpOygX9oo=";
+  cargoHash = "sha256-2SWYKqZfIN+Ghryuoh77eDiM7cqJcLihdWpEhOGpLZg=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/applications/networking/instant-messengers/utox/default.nix b/pkgs/applications/networking/instant-messengers/utox/default.nix
index 7fee1f5c3a83..c5aa13da0d33 100644
--- a/pkgs/applications/networking/instant-messengers/utox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/utox/default.nix
@@ -35,6 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Lightweight Tox client";
+    mainProgram = "utox";
     homepage = "https://github.com/uTox/uTox";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/networking/instant-messengers/vk-cli/default.nix b/pkgs/applications/networking/instant-messengers/vk-cli/default.nix
index a22437bf8da0..9d089a383556 100644
--- a/pkgs/applications/networking/instant-messengers/vk-cli/default.nix
+++ b/pkgs/applications/networking/instant-messengers/vk-cli/default.nix
@@ -46,6 +46,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A console (ncurses) client for vk.com written in D";
+    mainProgram = "vk-cli";
     homepage = "https://github.com/vk-cli/vk";
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.asl20;
diff --git a/pkgs/applications/networking/instant-messengers/webcord/default.nix b/pkgs/applications/networking/instant-messengers/webcord/default.nix
index d2ccfb8a4b03..d2796142e8f7 100644
--- a/pkgs/applications/networking/instant-messengers/webcord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/webcord/default.nix
@@ -7,23 +7,23 @@
 , libpulseaudio
 , libnotify
 , xdg-utils
-, electron_28
+, electron_29
 , makeDesktopItem
 , nix-update-script
 }:
 
 buildNpmPackage rec {
   pname = "webcord";
-  version = "4.7.1";
+  version = "4.8.0";
 
   src = fetchFromGitHub {
     owner = "SpacingBat3";
     repo = "WebCord";
     rev = "v${version}";
-    hash = "sha256-JzKXIdXR/C3HRbpmSUq3qXYpLnVQjIY/uO+wbt1k2jI=";
+    hash = "sha256-x9Ejb8yxgQhlEfUUfoqbgSffNNtOoFeAyb3OISR+Jz4=";
   };
 
-  npmDepsHash = "sha256-KbMoM1zYOjX2Dwu6DJZLyezRx78AC9piPw3xsX3Kb3I=";
+  npmDepsHash = "sha256-7H4I4vKygMgsPh+OvZZGhpkoQQu1a51yUTwEPJSBM18=";
 
   nativeBuildInputs = [
     copyDesktopItems
@@ -61,7 +61,7 @@ buildNpmPackage rec {
     install -Dm644 sources/assets/icons/app.png $out/share/icons/hicolor/256x256/apps/webcord.png
 
     # Add xdg-utils to path via suffix, per PR #181171
-    makeWrapper '${lib.getExe electron_28}' $out/bin/webcord \
+    makeWrapper '${lib.getExe electron_29}' $out/bin/webcord \
       --prefix LD_LIBRARY_PATH : ${libPath}:$out/opt/webcord \
       --suffix PATH : "${binPath}" \
       --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
diff --git a/pkgs/applications/networking/instant-messengers/webex/default.nix b/pkgs/applications/networking/instant-messengers/webex/default.nix
index c55178060fc8..6793c187e54a 100644
--- a/pkgs/applications/networking/instant-messengers/webex/default.nix
+++ b/pkgs/applications/networking/instant-messengers/webex/default.nix
@@ -56,11 +56,11 @@
 
 stdenv.mkDerivation rec {
   pname = "webex";
-  version = "43.11.0.27795";
+  version = "43.11.0.28947";
 
   src = fetchurl {
-    url = "https://binaries.webex.com/WebexDesktop-Ubuntu-Gold/20231108131957/Webex_ubuntu.7z";
-    sha256 = "e7a30481840a4a56c7ac38fa9efb487c722758ad9ac875432e86232d6a8e6466";
+    url = "https://binaries.webex.com/WebexDesktop-Ubuntu-Gold/20240311173044/Webex_ubuntu.7z";
+    sha256 = "f84669a2cd974435c6c0f8a6dc5a62c4ef01a3848e36ffcc8077f718be4a3b86";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix b/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix
index efca89de7cbb..366dcbeffaea 100644
--- a/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix
@@ -71,6 +71,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/eneshecan/whatsapp-for-linux";
     description = "Whatsapp desktop messaging app";
+    mainProgram = "whatsapp-for-linux";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ bartuka ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/networking/instant-messengers/xmppc/default.nix b/pkgs/applications/networking/instant-messengers/xmppc/default.nix
index c1a8891a073e..47eb18f191dc 100644
--- a/pkgs/applications/networking/instant-messengers/xmppc/default.nix
+++ b/pkgs/applications/networking/instant-messengers/xmppc/default.nix
@@ -30,6 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Command Line Interface Tool for XMPP";
+    mainProgram = "xmppc";
     homepage = "https://codeberg.org/Anoxinon_e.V./xmppc";
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/instant-messengers/ytalk/default.nix b/pkgs/applications/networking/instant-messengers/ytalk/default.nix
index 1ccc9fbe6f57..29ebc5f43d56 100644
--- a/pkgs/applications/networking/instant-messengers/ytalk/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ytalk/default.nix
@@ -14,6 +14,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage    = "http://ytalk.ourproject.org";
     description = "A terminal based talk client";
+    mainProgram = "ytalk";
     platforms   = lib.platforms.unix;
     maintainers = with lib.maintainers; [ taeer ];
     license     = lib.licenses.gpl2Plus;
diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
index d12bea03460e..5c96be3bb82e 100644
--- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
+++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
@@ -48,23 +48,23 @@ let
   # and often with different versions.  We write them on three lines
   # like this (rather than using {}) so that the updater script can
   # find where to edit them.
-  versions.aarch64-darwin = "5.17.10.30974";
-  versions.x86_64-darwin = "5.17.10.30974";
-  versions.x86_64-linux = "5.17.10.3512";
+  versions.aarch64-darwin = "5.17.11.31580";
+  versions.x86_64-darwin = "5.17.11.31580";
+  versions.x86_64-linux = "5.17.11.3835";
 
   srcs = {
     aarch64-darwin = fetchurl {
       url = "https://zoom.us/client/${versions.aarch64-darwin}/zoomusInstallerFull.pkg?archType=arm64";
       name = "zoomusInstallerFull.pkg";
-      hash = "sha256-JWGy8je6hFDTSKPx4GAUDMJdi5/zKoj4KK5w6E0pcsI=";
+      hash = "sha256-oCCZksH5sgfPVxh6I7ZpIMvkMX0+HnL1R9voNRjTUP4=";
     };
     x86_64-darwin = fetchurl {
       url = "https://zoom.us/client/${versions.x86_64-darwin}/zoomusInstallerFull.pkg";
-      hash = "sha256-lO0fyW5catdgKZ7cAQhdAbfQW+EewdCjTne+ZC3UW3w=";
+      hash = "sha256-6bIUfS6bZWh7fEq2xY++nIbnmE5DJxte6sjyoSKUMzU=";
     };
     x86_64-linux = fetchurl {
       url = "https://zoom.us/client/${versions.x86_64-linux}/zoom_x86_64.pkg.tar.xz";
-      hash = "sha256-dXpfgouZjd+0YyHz1c/7VL3a1SATAX8BpkR4KBeEDbc=";
+      hash = "sha256-eIa8ESoYi0gPbJbqahqKKvnM7rGPT+WeMIYCyFEWHGE=";
     };
   };