Some at my work place wondered how I access Teams…
But of course, the real world requires various proprietary software.
Fortunately, for now, there is quite good support to run Teams on Linux.
I’ll discuss 3 options here:
To get that going install it:
flatpak --user install com.github.IsmaelMartinez.teams_for_linux flatpak run com.github.IsmaelMartinez.teams_for_linux
Pros are it’s free software. Downside is the app is not up to date in flathub, but there is an AppImage for it. I don’t install apps that way on my distro so I mostly gave this software a skip.
The official Microsoft Teams Linux desktop client. To get that going one can:
flatpak --user install com.microsoft.Teams flatpak run com.microsoft.Teams --filesystem=~/tmp/teams
I’m not a fan of the official MS Teams on Linux desktop client.
- It’s heavy on resources, especially CPU.
- Drains battery.
- It’s proprietary.
- It requires pulseaudio due to the flatpak bundle.
- Hasn’t got the latest Teams features. Lags behind the Windows and Mac equivalent unsurprisingly. For instance you can’t put up your hand to speak and many other little things.
- It’s got it’s own notification system. One can’t integrate this into your desktop. So it’s an eye sore and you can’t manage all your notifications centrally.
The other option, which is the best for me is via the web. Yes one could just browse to https://teams.microsoft.com, but there is a better way.
Let’s call this “web app client”. (BTW, this idea can be extended to wrap a lot more apps then just Teams.)
Basically install this script at
~/.local/binshould be in your
#!/bin/sh chrome --app="https://teams.office.com" "$@"
The benefits here:
- Integrated notifications.
- Much less CPU usage.
- Doesn’t drain your battery.
- You get the latest Teams features.
- Doesn’t require pulseaudio.
I have also tested this teams setup with a free Google Chrome alternative like ungoogled-chromium yet and the results were exactly the same, which is great.
One issue I noticed with this web app client setup is getting a Teams invite via email or in another browser would not open it in my “teams app” (which is a shell script).
That was resolved by installing this file
[Desktop Entry] Version=1.0 Type=Application Name=Teams Exec=teams Terminal=false StartupNotify=true Categories=AudioVideo;Network; MimeType=x-scheme-handler/msteams; X-KDE-Protocols=teams
I also added this to
x-scheme-handler/msteams; teams %s
Now clicking a Teams link on any app should launch it perfectly.
The other issue I noticed with this method of launching Teams is that the desktop screen sharing doesn’t work as well as the official client.
That is the “web app client” can’t share an application, only a chrome tab, or your “desktop”.
When doing screen sharing I normally would share a single screen from my desktop. This works great in the official client, but in this option it shares your entire virtual screen. So if you have two or 3 monitors attached it shares that wide screen view which is unusable.
The workaround for me turns out to be very simple. I simply switch off the monitor of the screen(s) I’m not sharing before starting the screen sharing session:
xrandr --output DP-2 --off
I don’t normally share a single application, though that would be a nice option to have. I’ve tried installing this Chrome extension, but that didn’t solve it for me. If you manage to get it working, let me know.
Update on screen sharing with multi-monitores, an update to the teams website as fixed the issue. It just works now, ie it prompts you which screen you want to share when you have multiple options.
Lastly, many Linux users have issues logging into teams. At the credentials screen, it fails to login and “loops back” to the login screen continuously. This is resolved by the AD infrastructure “whitelisted” your device. It’s marked as untrusted, because it’s not a Windows device enrolled into active directory. It would be nice if it told you that, but that’s not how Microsoft rolls.