Unverified Commit 563741a3 authored by Nick Cao's avatar Nick Cao Committed by GitHub
Browse files

Merge pull request #226543 from lilyinstarlight/upd/teams-for-linux-1.0.65

teams-for-linux: 1.0.59 -> 1.0.65
parents 085e018c 6c15c20d
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -16,13 +16,13 @@

stdenv.mkDerivation rec {
  pname = "teams-for-linux";
  version = "1.0.59";
  version = "1.0.65";

  src = fetchFromGitHub {
    owner = "IsmaelMartinez";
    repo = pname;
    rev = "v${version}";
    sha256 = "sha256-82uRZEktKHMQhozG5Zpa2DFu1VZOEDBWpsbfgMzoXY8=";
    sha256 = "sha256-Rj6A1h5R4w8zacoTV0WKTbTD67qwsw4zHP+KQ6h7/gs=";
  };

  offlineCache = fetchYarnDeps {
@@ -30,6 +30,11 @@ stdenv.mkDerivation rec {
    sha256 = "sha256-3zjmVIPQ+F2jPQ2xkAv5hQUjr8k5jIHTsa73J+IMayw=";
  };

  patches = [
    # Can be removed once Electron upstream resolves https://github.com/electron/electron/issues/36660
    ./screensharing-wayland-hack-fix.patch
  ];

  nativeBuildInputs = [ yarn fixup_yarn_lock nodejs copyDesktopItems makeWrapper ];

  configurePhase = ''
+28 −0
Original line number Diff line number Diff line
diff --git a/app/index.js b/app/index.js
index 20ccf43..b251f62 100644
--- a/app/index.js
+++ b/app/index.js
@@ -1,4 +1,4 @@
-const { app, ipcMain, desktopCapturer, systemPreferences, powerMonitor } = require('electron');
+const { app, ipcMain, desktopCapturer, nativeImage, systemPreferences, powerMonitor } = require('electron');
 const path = require('path');
 const { LucidLog } = require('lucid-log');
 const isDev = require('electron-is-dev');
@@ -93,7 +93,16 @@ if (!gotTheLock) {
 	ipcMain.handle('getSystemIdleState', handleGetSystemIdleState);
 	ipcMain.handle('getZoomLevel', handleGetZoomLevel);
 	ipcMain.handle('saveZoomLevel', handleSaveZoomLevel);
-	ipcMain.handle('desktopCapturerGetSources', (event, opts) => desktopCapturer.getSources(opts));
+	ipcMain.handle('desktopCapturerGetSources', (event, opts) => process.env.XDG_SESSION_TYPE == 'wayland' ?
+		// Port wayland electron 22+ screenshare "fix" from webcord
+		Promise.resolve([{
+			id: "screen:1:0",
+			appIcon: nativeImage.createEmpty(),
+			display_id: "",
+			name: "Entire Screen",
+			thumbnail: nativeImage.createEmpty()
+		}])
+		: desktopCapturer.getSources(opts));
 	ipcMain.on('play-notification-sound', playNotificationSound);
 }
 
+1 −3
Original line number Diff line number Diff line
@@ -33941,9 +33941,7 @@ with pkgs;
  teams = callPackage ../applications/networking/instant-messengers/teams { };
  teams-for-linux = callPackage ../applications/networking/instant-messengers/teams-for-linux {
    electron = electron_21;
  };
  teams-for-linux = callPackage ../applications/networking/instant-messengers/teams-for-linux { };
  teamspeak_client = libsForQt5.callPackage ../applications/networking/instant-messengers/teamspeak/client.nix { };
  teamspeak5_client = callPackage ../applications/networking/instant-messengers/teamspeak/client5.nix { };