Telegram Desktop is the official native client for Ubuntu when you want synced chats, channels, calls, and file sharing outside a browser tab. It is not the same as Telegram Web (web.telegram.org)—the desktop app adds notifications, a tray icon, and better media handling on GNOME, KDE, and other Linux desktops.
This guide covers how to install Telegram on Ubuntu through every path readers actually use: Snap (publisher Telegram FZ-LLC on Snapcraft), the official Linux tarball from desktop.telegram.org, and Flatpak on Flathub. I installed the Snap build on Ubuntu 25.04 and downloaded the matching tsetup.6.9.3.tar.xz archive to verify the portable layout.
Tested on: Ubuntu 25.04 (Plucky Puffin); kernel 6.14.0-37-generic.
apt install telegram-desktop does not exist in the default archive. The must-have Ubuntu apps list calls out telegram-desktop as a Snap or vendor install—search with apt search telegram before you assume a universe package is available.
Quick command summary
| Task | Command |
|---|---|
| Install via Snap (recommended) | sudo snap install telegram-desktop |
| Check Snap version | snap list telegram-desktop |
| Update Snap build | sudo snap refresh telegram-desktop |
| Download official tarball | wget -O tsetup.tar.xz https://telegram.org/dl/desktop/linux |
| Extract tarball | tar -xf tsetup.tar.xz |
| Run portable binary | ./Telegram/Telegram |
| Install via Flatpak | flatpak install flathub org.telegram.desktop |
| Launch Flatpak build | flatpak run org.telegram.desktop |
| Remove Snap install | sudo snap remove telegram-desktop |
Prerequisites
- Ubuntu 22.04 LTS, 24.04 LTS, or newer (25.04 tested here). amd64 is the primary target; Flathub also ships aarch64.
- sudo for Snap and system-wide portable installs.
- A desktop session (Wayland or X11). Pure SSH servers without a display cannot launch the Qt GUI—use Telegram on your laptop or enable X11 forwarding.
- snapd on Ubuntu Desktop (preinstalled on current releases). If
snapis missing:sudo apt install snapd. - Outbound HTTPS to
snapcraft.io,telegram.org, orflathub.orgdepending on the method.
Telegram Desktop vs Telegram Web
| Telegram Desktop | Telegram Web | |
|---|---|---|
| Install | Snap, tarball, or Flatpak | Browser only |
| Notifications | Native desktop alerts | Browser-dependent |
| Offline media cache | Yes (local folder) | Limited |
| Best for | Daily messaging on Ubuntu | Quick access without install |
Both use the same phone-number login—your chats sync through Telegram cloud once you verify the code.
Step 1: Install Telegram with Snap
Snap is the path Canonical documents on Snapcraft and the fastest on Ubuntu Desktop:
sudo snap install telegram-desktopOn Ubuntu 25.04 the install finished with:
telegram-desktop 6.9.3 from Telegram FZ-LLC (telegram-desktop**) installedVerify:
snap list telegram-desktop
which telegram-desktopName Version Rev Tracking Publisher
telegram-desktop 6.9.3 7014 latest/stable telegram-desktop**
/snap/bin/telegram-desktopLaunch from the app menu (Telegram) or run telegram-desktop in a terminal on a machine with a graphical session.
Snap stores profile data under ~/snap/telegram-desktop/ (revision folders plus common). The publisher connects camera, audio-record, and desktop interfaces for calls and notifications—check with snap connections telegram-desktop if a permission is blocked.
Step 2: Install the official Linux tarball (portable)
desktop.telegram.org lists Get Telegram for Linux x64—a self-contained archive, not a .deb.
Download and extract
cd ~/Downloads
wget -O tsetup.tar.xz https://telegram.org/dl/desktop/linux
tar -xf tsetup.tar.xz
ls Telegram/The redirect resolved to tsetup.6.9.3.tar.xz (~67 MB download). Extraction produced:
Telegram/Telegram
Telegram/UpdaterThe main binary is about 209 MB; the bundled Updater handles in-place upgrades when you run it from that folder.
Run without installing
cd ~/Downloads/Telegram
./TelegramOptional system-wide layout
sudo mv Telegram /opt/Telegram
sudo ln -sf /opt/Telegram/Telegram /usr/local/bin/telegram-desktopCreate a .desktop launcher so the app menu picks it up:
cat <<'EOF' | tee ~/.local/share/applications/telegram-portable.desktop
[Desktop Entry]
Version=1.0
Type=Application
Name=Telegram (portable)
Exec=/opt/Telegram/Telegram
Icon=telegram
Terminal=false
Categories=Network;InstantMessaging;
EOF
update-desktop-database ~/.local/share/applications 2>/dev/null || truePick one install channel for daily use—running Snap and /opt/Telegram together creates duplicate icons and separate config folders.
Step 3: Install Telegram with Flatpak
Telegram links Flatpak from the official download page. On Flathub the app ID is org.telegram.desktop (x86_64 and aarch64).
sudo apt install -y flatpak
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.telegram.desktopLaunch:
flatpak run org.telegram.desktopFlatpak sandboxes the app; portal permissions cover camera and microphone for calls. Updates arrive through flatpak update.
First login and daily use
- Open Telegram from the app menu (Snap, Flatpak, or your
.desktopentry). - Enter your phone number with country code.
- Enter the verification code from SMS or the Telegram app on your phone.
- Optional: set a two-step verification password if your account uses one.
After login, chats sync from the cloud. Media caches locally—use disk cleanup practices if the cache grows large on a small root volume.
How to update Telegram Desktop on Ubuntu
| Install method | Update command |
|---|---|
| Snap | sudo snap refresh telegram-desktop (also auto-refreshes in background) |
| Official tarball | Re-download from https://telegram.org/dl/desktop/linux or run ./Updater inside the Telegram folder |
| Flatpak | flatpak update org.telegram.desktop |
Check the running Snap version anytime:
snap info telegram-desktop | grep -E 'installed|stable'installed: 6.9.3 (7014) 93.6MB -
latest/stable: 6.9.3 2026-06-13 (7014) 93.6MB -When latest/stable moves ahead of installed, run sudo snap refresh telegram-desktop.
Uninstall Telegram
See also the general remove software on Ubuntu guide for Snap vs apt vs manual paths.
Snap:
sudo snap remove telegram-desktopSnap may keep a data snapshot; purge local state with rm -rf ~/snap/telegram-desktop when you do not need settings or cached media.
Flatpak:
flatpak uninstall org.telegram.desktopPortable tarball:
sudo rm -rf /opt/Telegram
sudo rm -f /usr/local/bin/telegram-desktop
rm -f ~/.local/share/applications/telegram-portable.desktopTroubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
snap: command not found |
snapd not installed | sudo apt install snapd; log out and back in |
telegram-desktop crashes on SSH with no display |
Headless server | Run on a desktop session, or use X11 forwarding / a local machine |
| Qt platform plugin / Wayland errors | No compositor in session | Log into GNOME/KDE locally; try export QT_QPA_PLATFORM=xcb |
| Two Telegram icons in the menu | Snap + tarball + Flatpak together | Remove extras with snap remove or delete portable .desktop |
apt install telegram-desktop not found |
Package not in Ubuntu archive | Use Snap or official tarball—see must-have apps |
| Old version after update | Snap refresh pending | sudo snap refresh telegram-desktop; reboot session if menu still shows old icon |
| Camera or mic blocked on Snap | Interface disconnected | snap connect telegram-desktop:camera and snap connect telegram-desktop:audio-record |
References
- Telegram Desktop download (official)
- Install Telegram on Ubuntu (Snapcraft)
- Telegram Desktop on Flathub
- Telegram Desktop source (GitHub)
Summary
To install Telegram on Ubuntu, run sudo snap install telegram-desktop on current Desktop releases—you get 6.9.3 with automatic updates and a menu entry. When Snap is not an option, download the official tsetup tarball from desktop.telegram.org, extract Telegram/Telegram, and run it or move it to /opt/Telegram. Flatpak via org.telegram.desktop suits sandboxed setups and ARM laptops. apt does not ship the desktop client on Ubuntu 25.04—use Snap or the vendor binary. Update Snap with snap refresh, refresh the tarball through Updater or a new download, and remove with snap remove when you are done.









