In this article
On Linux the application is the same everywhere — Telegram Desktop, the cross-platform client from Step 003. What changes is the packaging, and Linux offers three of them: a plain archive from Telegram, a Flatpak, and a Snap.
The choice is usually presented as a matter of taste. It is not quite: the three differ in who assembled the package, how confined it is, and consequently whether screen sharing and file dialogues behave as you expect.
What you will be able to do after this step
- check_circle Pick a packaging format for reasons you can state out loud.
- check_circle Say which builds come from Telegram and which are packaged by somebody else.
- check_circle Fix screen sharing on Wayland instead of concluding it is broken.
- check_circle Find your session folder, and treat it with the care it deserves.
terminal One application, three packages — and two different publishers
Telegram itself publishes one Linux build: a compressed archive from desktop.telegram.org. You unpack it, you run it, and it updates itself. That is the build that comes directly from the people who wrote the software, signed the way Step 002 described.
The Flatpak and the Snap are packaged from the same source by people in those ecosystems. This is entirely normal on Linux — it is how most software reaches most distributions — and the packagers in question are visible and accountable. But it is worth knowing, because it explains the two things people notice: the packaged builds sometimes trail the direct one by a few days, and they behave differently with files and screens because the packaging confines them.
Your distribution's own repository may also carry a Telegram package. Those vary enormously in how current they are, and a very old client is eventually refused by the servers. If your distribution ships a recent one, use it; if the version is a year behind, take the archive.
Three packages, three sets of consequences
Pick a format. The columns show what it gives you and what it asks for in return.
check_circle What it gives you
rule What it asks for
The straightforward choice. Take it if you want the official binary and nothing between you and it.
check_circle What it gives you
rule What it asks for
The right default on a desktop you share or care about. Install the portal for your desktop environment at the same time and the rough edge disappears.
check_circle What it gives you
rule What it asks for
Reasonable if your system already runs on Snaps. There is little reason to introduce it to a machine that does not.
public The two things that actually go wrong
Almost every Linux-specific complaint about Telegram is one of two problems, and both have short answers.
Screen sharing shows a black rectangle. On Wayland an application cannot simply grab the screen; it has to ask through a desktop portal, and the portal is a separate package matched to your desktop environment. Install the portal for GNOME, KDE or wlroots as appropriate, make sure PipeWire is running, and the monitor picker appears as it should. Nothing is wrong with the client — it is asking a component that is not installed.
The tray icon is missing. Several desktop environments no longer show legacy tray icons without an extension, which makes an app that minimises to the tray appear to vanish. Either add the extension your desktop uses, or stop treating the tray as the place the app lives. This is not a Telegram decision and no setting inside Telegram fixes it.
A third, smaller one: if you want the client to start quietly with your session rather than opening a window across your screen, it takes a start-minimised flag on the command line, or the equivalent switch in the application's own settings. Tiling window manager users generally want the flag in their session file.
folder_open Where your session lives
As on Windows, Telegram Desktop keeps its authorisation and its cache in a folder called tdata. Where that folder sits depends on the packaging: under your local share directory for the archive build, inside the Flatpak's own application data directory, and under the Snap's directory in your home folder for a Snap.
The warning from Step 003 applies identically here, and on a multi-user machine it deserves repeating. That folder is a signed-in session. Anyone who can read it — another account on the same machine with loose permissions, a backup you copied to a shared drive, a home directory on a network mount — can open your account elsewhere with no password and no code. Turning on the local passcode in Settings, under Privacy and Security, encrypts it and closes that door.
It also means there is nothing to back up. Copying tdata to preserve your chats is unnecessary, because the chats are not in it; signing in on a new machine produces the same history. The only thing that folder saves you is typing a code, which is a poor trade for leaving your account lying in a backup archive.
touch_app Try it now — five minutes
Four things worth settling on the day you install it. Each one prevents a problem that otherwise surfaces weeks later, when you have forgotten what you configured.
- Install the desktop portal for your environment now Not when a call starts. Screen sharing is the single most common Linux complaint about this client, the fix is a package rather than a setting, and testing it takes thirty seconds against your own second monitor.
- Cap the cache and restrict automatic downloads Settings, then Advanced, then Data and Storage. A desktop client left open in a busy channel will fetch a great deal of video nobody watches. Capping the cache controls the disk; restricting automatic downloads is what controls both disk and bandwidth.
- Turn on the local passcode Settings, then Privacy and Security. This is the setting that makes the session folder useless to anyone who copies it, and on a shared or networked home directory it is not optional.
- Decide how it starts with your session Either enable the option in the client's own settings, or add the start-minimised flag to your session file if you run a tiling window manager. A client that opens a full window on every login is a client you will disable and then miss messages from.
help Common questions at this stage
How does the archive build update itself without root?
Because it lives in your home directory, which you own. The client downloads the new version and replaces its own files on the next start — no package manager, no elevation, no prompt. The corollary is that you should unpack it somewhere you own rather than somewhere system-wide; putting it in a root-owned directory is how people end up with a client that cannot update itself and quietly falls behind.
Can I move from one packaging format to another?
Yes, and it is a fresh install rather than a migration: install the new one, sign in, remove the old one. Do not copy the session folder across — the paths differ and the exercise is pointless, since signing in gives you the identical history. Log out of the old installation before removing it, so the session ends rather than merely disappearing from your disk.
Is there a terminal client, or a way to use Telegram without a graphical desktop?
Third-party terminal clients exist and some are well regarded, but they are written by people other than Telegram and they hold your session, which puts them in the category Step 002 asked you to decline for now. Telegram's own answer for a machine without a desktop is the web client in a browser, or simply your phone. Automation is a different question entirely and belongs to bots rather than to clients — Step 086 starts that thread.
Telegram is using several gigabytes under my home directory. Can I delete that?
The cache, yes, and nothing is lost by it. Settings, then Advanced, then Data and Storage shows what is being kept and lets you cap both the size and the age. What you should not delete by hand is the tdata folder, since that is your session rather than cached media — removing it logs the client out. Clearing from inside the application removes the right things.
My distribution's package is old. Does that matter?
Up to a point it is only missing features. Past a certain age the servers stop accepting a client altogether, and the app tells you so and refuses to connect. If you like installing everything through your package manager but your distribution moves slowly, a Flatpak or the direct archive alongside it is the usual compromise — keep one, not both, so that you are not running two sessions without realising.
Does running Telegram on Linux change anything about my account?
Nothing at all. It is another session on the same account, seeing the same cloud history, with the same groups and settings. The differences in this step are entirely about the machine in front of you: how the software was packaged, what it is allowed to touch, and where it writes. That separation — account on the servers, client on the device — is the idea Step 001 introduced, and it is what makes every step in this section a local decision rather than an account one.
At a glance
- 1Three packages
The tarball comes from Telegram; Flatpak and Snap are packaged by their ecosystems.
- 2Screen sharing
A black screen on Wayland usually means the desktop portal is missing.
- 3Session folder
It holds your login, so protect it like a password.
Updated