How to Install Microsoft Teams on Ubuntu 26.04, 24.04 and 22.04

Install Microsoft Teams on Ubuntu 26.04, 24.04, and 22.04 LTS using the third-party repository, Snap, or Flatpak with this guide.

Last updatedAuthorJoshua JamesRead time7 minGuide typeUbuntu

Microsoft no longer ships a native Teams desktop client for Linux, so the supported way to install Microsoft Teams on Ubuntu is the Teams PWA in a browser. If you want a separate desktop launcher, tray behavior, and package-manager updates, use the unofficial teams-for-linux wrapper instead.

These steps cover Ubuntu 26.04 LTS, 24.04 LTS, and 22.04 LTS. The Snap package name is teams-for-linux, not teams or microsoft-teams; Snap, Flatpak, and the project APT repository all install the same community wrapper around Teams for Web.

Update Ubuntu Before Installing Teams

Refresh APT metadata and apply pending package updates before adding any packaged Teams method:

sudo apt update && sudo apt upgrade -y

These commands use sudo for tasks that need administrator privileges. If your user cannot run sudo yet, run the commands as root or follow the guide to add a new user to sudoers on Ubuntu.

Install Microsoft Teams on Ubuntu

Choose one installation path. The PWA is Microsoft’s official Linux-facing option, while the other methods install teams-for-linux, an unofficial wrapper maintained outside Microsoft.

MethodPackage or sourceStatusUpdatesUse when
Teams PWAMicrosoft Teams download pageOfficial Microsoft Linux routeBrowser-managedYou need the Microsoft-supported web/PWA path
Snapteams-for-linux on SnapcraftUnofficial wrapper by Ismael Martinez Ramossnap refreshYou want the simplest packaged wrapper on Ubuntu
Flatpakcom.github.IsmaelMartinez.teams_for_linux on FlathubUnofficial wrapper, Flathub-verified project pageflatpak updateYou prefer a sandboxed desktop app from Flathub
APT repositoryteams-for-linux project repositoryUnofficial project DEB repositoryapt upgradeYou want a native DEB package managed by APT

Do not install multiple teams-for-linux package formats at the same time. Choose Snap, Flatpak, or APT for the wrapper. Keeping more than one installed can create duplicate launchers, separate settings, and confusing update behavior.

Microsoft does not publish an official Teams Snap for Linux. The Snap command for the unofficial wrapper is sudo snap install teams-for-linux; commands such as sudo snap install teams or sudo snap install microsoft-teams target the wrong package name.

Use the Official Teams PWA

The Microsoft-supported Linux path is the Teams PWA. Microsoft documents Teams for Web support on current Edge, Chrome, and Firefox releases on Linux, while the Linux download section sends users to the PWA instead of a native desktop package.

  • Open Microsoft Edge or Google Chrome and visit teams.microsoft.com.
  • Sign in with your Microsoft account, work account, or school account.
  • Use the browser’s install-app option from the address bar or application menu, then launch Teams from your Ubuntu applications menu.

If your Ubuntu desktop does not already have a Chromium-based browser, install Microsoft Edge on Ubuntu or Google Chrome on Ubuntu first. Firefox can run Teams for Web, but Edge and Chrome usually provide the clearest PWA install workflow.

Install Teams via Snap

Snap is the easiest packaged teams-for-linux method on Ubuntu because snapd is already installed on standard Ubuntu desktops. Install the stable Snap package with:

sudo snap install teams-for-linux

Check the Snap package metadata so you know you installed the unofficial wrapper, not a Microsoft-published Snap:

snap info teams-for-linux | sed -n '1,8p'

Relevant output includes:

name:      teams-for-linux
summary:   Teams for Linux
publisher: Ismael Martinez Ramos (ismaelmartinez)
store-url: https://snapcraft.io/teams-for-linux

Confirm the installed Snap row with a trimmed check that focuses on the stable channel and publisher instead of volatile version and revision columns:

snap list teams-for-linux | awk 'NR==1 {print $1, $4, $5} NR==2 {print $1, $4, $5}'
Name Tracking Publisher
teams-for-linux latest/stable ismaelmartinez

Install Teams via Flatpak

Flatpak is useful when you want the Flathub package and sandboxed desktop-app behavior. Ubuntu does not install Flatpak by default, so add Flatpak and the Flathub remote first:

For a fuller Flatpak setup walkthrough, including desktop integration and Flathub details, use the Flatpak installation guide for Ubuntu.

sudo apt install flatpak -y
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Verify that the system-level Flathub remote exists before installing the app:

flatpak remotes --columns=name,url
flathub  https://dl.flathub.org/repo/

Install the Flathub app ID for teams-for-linux:

sudo flatpak install flathub com.github.IsmaelMartinez.teams_for_linux -y

Confirm that Flatpak can see the installed application:

flatpak info com.github.IsmaelMartinez.teams_for_linux | sed -n '1,10p'
Teams for Linux - Unofficial Microsoft Teams client for Linux

          ID: com.github.IsmaelMartinez.teams_for_linux
         Ref: app/com.github.IsmaelMartinez.teams_for_linux/x86_64/stable
        Arch: x86_64
      Branch: stable
      Origin: flathub

Install Teams via APT Repository

The teams-for-linux project also publishes standalone .deb files on GitHub Releases, but the APT repository is better for routine use because updates arrive through normal package upgrades. Install the repository prerequisites first:

sudo apt install ca-certificates curl gpg -y

Download the repository signing key and store it in a dedicated APT keyring. The curl command downloads the ASCII-armored key, and gpg --dearmor converts it into the binary keyring format APT expects:

curl -fsSL https://repo.teamsforlinux.de/teams-for-linux.asc | sudo gpg --dearmor --yes -o /usr/share/keyrings/teams-for-linux.gpg

Create the DEB822 source file. The printf and sudo tee pattern writes the file as root, while $(dpkg --print-architecture) records your system architecture in the source stanza:

printf '%s\n' \
'Types: deb' \
'URIs: https://repo.teamsforlinux.de/debian/' \
'Suites: stable' \
'Components: main' \
"Architectures: $(dpkg --print-architecture)" \
'Signed-By: /usr/share/keyrings/teams-for-linux.gpg' \
| sudo tee /etc/apt/sources.list.d/teams-for-linux.sources > /dev/null

Review the source file before refreshing APT. On an amd64 Ubuntu system, the file should look like this; on arm64 or armhf, the Architectures line changes to match your hardware:

cat /etc/apt/sources.list.d/teams-for-linux.sources
Types: deb
URIs: https://repo.teamsforlinux.de/debian/
Suites: stable
Components: main
Architectures: amd64
Signed-By: /usr/share/keyrings/teams-for-linux.gpg

Update APT and confirm the repository provides a package candidate. Version numbers change as the project publishes new releases, so the important signals are the candidate line and the teamsforlinux.de source line:

sudo apt update
apt-cache policy teams-for-linux
teams-for-linux:
  Installed: (none)
  Candidate: 2.x.x
  Version table:
     2.x.x 500
        500 https://repo.teamsforlinux.de/debian stable/main amd64 Packages

Install the package:

sudo apt install teams-for-linux -y

The APT package creates /usr/bin/teams-for-linux as the launcher for the application under /opt/teams-for-linux/. Verify the launcher command:

command -v teams-for-linux
/usr/bin/teams-for-linux

Launch Teams on Ubuntu

After installation, launch Teams from your applications menu. The PWA appears under the name set by your browser, usually Microsoft Teams, while the packaged wrapper appears as Teams for Linux.

For terminal launches, use the command that matches your packaged install method:

APT repository:

teams-for-linux

Snap:

snap run teams-for-linux

Flatpak:

flatpak run com.github.IsmaelMartinez.teams_for_linux

Manage Teams Updates on Ubuntu

The PWA updates with your browser and the Teams web service. For packaged teams-for-linux installs, use the package manager that installed it.

Update the Snap Package

Snap refreshes apps automatically, but you can trigger an immediate check:

sudo snap refresh teams-for-linux

Update the Flatpak Package

Update only the Teams for Linux Flatpak package:

sudo flatpak update com.github.IsmaelMartinez.teams_for_linux -y

To update every system-level Flatpak app and runtime at once, run:

sudo flatpak update -y

Update the APT Package

Update only the APT repository package:

sudo apt update
sudo apt install --only-upgrade teams-for-linux -y

Remove Teams from Ubuntu

Use the removal steps that match your install method. The PWA is removed from the browser, while Snap, Flatpak, and APT use their own package-manager cleanup commands.

Remove the Teams PWA

Open the installed Teams PWA, then use your browser’s app management menu to uninstall or remove the app. In Edge or Chrome, installed web apps also appear in the browser’s app management page, where you can remove the Teams PWA without deleting your browser profile.

Remove the Snap Package

Remove the Snap package without saving snapd’s automatic recovery snapshot:

sudo snap remove --purge teams-for-linux

Confirm the Snap package is gone:

snap list teams-for-linux 2>/dev/null || echo "teams-for-linux not installed"
teams-for-linux not installed

Remove the Flatpak Package

Uninstall the Flatpak app and then remove unused runtimes that no other Flatpak app needs:

sudo flatpak uninstall com.github.IsmaelMartinez.teams_for_linux -y
sudo flatpak uninstall --unused -y

Confirm the Flatpak app ID is gone:

flatpak list --app --columns=application | grep -Fx com.github.IsmaelMartinez.teams_for_linux || echo "teams-for-linux flatpak not installed"
teams-for-linux flatpak not installed

Flatpak user data lives under ~/.var/app/com.github.IsmaelMartinez.teams_for_linux/. Remove it only if you want to delete cached data and login state:

The next command permanently deletes the Teams for Linux Flatpak profile for your user, including cached data and login sessions. Skip it if you plan to reinstall and want to keep that state.

rm -rf ~/.var/app/com.github.IsmaelMartinez.teams_for_linux

Remove the APT Package and Repository

Remove the APT package first:

sudo apt remove --purge teams-for-linux -y

Confirm the package is no longer installed:

dpkg-query -s teams-for-linux 2>/dev/null | grep '^Status: install ok installed' || echo "teams-for-linux package not installed"
teams-for-linux package not installed

Delete the repository source file and signing key you created for the APT method:

sudo rm -f /etc/apt/sources.list.d/teams-for-linux.sources
sudo rm -f /usr/share/keyrings/teams-for-linux.gpg
sudo apt update

Verify that the source file and keyring were removed:

test ! -e /etc/apt/sources.list.d/teams-for-linux.sources && echo "teams-for-linux source removed"
test ! -e /usr/share/keyrings/teams-for-linux.gpg && echo "teams-for-linux key removed"
teams-for-linux source removed
teams-for-linux key removed

Optionally remove the Teams for Linux user profile directory from your home folder:

The next command permanently deletes Teams for Linux settings, cached data, and login sessions for your user. Skip it if you plan to reinstall and want to keep your configuration.

rm -rf ~/.config/teams-for-linux

Troubleshoot Teams on Ubuntu

Official Microsoft Packages vs teams-for-linux

Microsoft’s official Linux-facing Teams option is the PWA, not a Snap, Flatpak, or APT package. The teams-for-linux packages are community-maintained wrappers around Teams for Web, so use them when the wrapper workflow is useful and use the PWA when your workplace expects the Microsoft-supported path.

If you searched for an official Microsoft Teams .deb download, the Microsoft Teams download page currently points Linux users to the PWA. The teams-for-linux project publishes its own .deb assets, but the APT repository section is easier to maintain than repeatedly downloading standalone package files.

Camera and Microphone Access with Snap

If the Snap install opens but Teams cannot access your camera or microphone, inspect the Snap interfaces:

snap connections teams-for-linux | grep -E 'camera|audio-record'
audio-record              teams-for-linux:audio-record             -                                -
camera                    teams-for-linux:camera                   :camera                          -

The camera interface is normally connected automatically. If audio-record shows a dash in the Slot column, connect microphone access manually:

sudo snap connect teams-for-linux:audio-record

Work or School Account Sign-In

Teams for Linux signs in through the same Teams web service as the browser app, so personal, work, and school accounts can all use the normal Microsoft sign-in flow. Organization policies can still affect browser choice, Conditional Access, device compliance, or tenant switching, so use the official PWA in Edge if your administrator requires that route.

GNOME Tray Icon and Notifications

Teams for Linux can show desktop notifications and a tray icon when the desktop session allows them. If the tray icon is missing on GNOME, check that AppIndicator support is enabled and that Ubuntu notification permissions allow Teams or Teams for Linux to show alerts.

Teams Web Feature Limits

Because both the PWA and teams-for-linux depend on Teams for Web, some desktop-client features can differ from Windows or macOS. Microsoft documents web-client gaps such as simultaneous notifications across multiple accounts and some meeting visual effects, so keep a supported browser available if a meeting feature behaves differently inside the wrapper.

Conclusion

Microsoft Teams is available on Ubuntu through the official PWA, while teams-for-linux supplies a packaged desktop wrapper through Snap, Flatpak, or the project APT repository. Keep one wrapper package installed at a time, and use the PWA when your organization wants the Microsoft-supported Linux path. For related communication tools, see the Ubuntu guides for Slack, Discord, Signal, or Telegram.

Share this guide

Help another Linux user troubleshoot faster

Share this guide with someone troubleshooting Linux systems or saving it for later.

Follow LinuxCapable

Want more LinuxCapable guides in Google?

Add LinuxCapable as a preferred source so Google can show more of our fresh Linux tutorials in Top Stories and From your sources when relevant.

Add LinuxCapable as a preferred source on Google
Search LinuxCapable

Need another guide?

Search LinuxCapable for package installs, commands, troubleshooting, and follow-up guides related to what you just read.

Found this guide useful?

Support LinuxCapable to keep tutorials free and up to date.

Buy me a coffeeBuy me a coffee
Before commenting, please review our Comments Policy.
Formatting tips for your comment

You can use basic HTML to format your comment. Useful tags currently allowed in published comments:

You type Result
<code>command</code> command
<strong>bold</strong> bold
<em>italic</em> italic
<blockquote>quote</blockquote> quote block

Got a Question or Feedback?

We read and reply to every comment - let us know how we can help or improve this guide.

Verify before posting: