Recently, there has been a new wave of instant messaging services focused on the mobile world. Examples include Whatsapp, Messenger, Hangouts, and Viber. However, these are all closed and don’t have the best record of security and privacy. A new service with a different approach is Telegram. It’s developed and run by a non-profit organization, has an open API and protocol, provides open source clients, and stresses privacy.
The Telegram instant messaging service was founded by Nikolai and Pavel Durovs. They are known for founding VKontakte, the Russian equivalent of Facebook, which they left after they refused to hand over users’ data to FSB. Telegram is based in Berlin and the service has received accolades all around the world.
I’d known about Telegram for some time, but hadn’t tried it out until I conducted a survey asking what IM services Fedora users were using. It caught my attention because it ended up surprisingly high in the list.
Here is a summary of what makes Telegram an attractive option for instant messaging:
- Free of charge and run by a non-profit organization
- Open (open API, open protocol, open source clients; the server side is currently closed though)
- Accepts file uploads up to 1.5 GB
- Secret Chats (end-to-end encryption, a timer to destruct messages)
- Bot API (API that lets you write your own bots to notify you or deliver content to your Telegram client).
How to Join
Telegram accounts are tied to the phone number of the user. The easiest way to start with Telegram are the mobile apps, because they can scan your contacts and give you a list of friends already using the service. You can join Telegram even without having a smartphone, though. You can create an account in one of the official clients including the web client. You’ll need a phone to receive authentication PINs via SMS.
Available Clients for Fedora
There are several Telegram clients you can use in Fedora. There is no clear winner, though. Every client has its pros and cons, which I will try to describe in the following paragraphs.
The official client for Linux desktop is open source and can be found in Copr. You can install it by running the following commands:
sudo dnf install telegram-desktop
The desktop client has all the bells and whistles of Telegram. It includes group chats, emoticons, stickers, and sending/receiving files. However, it lacks one important feature: secret chats which provide end-to-end encryption and were ranked by EFF at 7/7 points.
The desktop client is written in Qt, but unfortunately it’s patched. This makes it hard to include in the official repositories of Fedora. Another minor inconvenience is that it uses its own notifications, instead of the standard ones the system provides. Moreover, the app in Copr is not really built from the source code, but a packaged binary provided on the website of Telegram. So instead of relying on the packaging system, it has its own updating mechanism. This may cause some complexity, such as a parallel installation of the app.
Cutegram is an unofficial alternative to Telegram Desktop and is a well-done client, written in QML. If there was a standard way to install it in Fedora, it would definitely be the best option. However, it’s not available in the official repositories or Copr, and the authors don’t provide an RPM package. You need to download a generic installer which installs the app to /opt and doesn’t create a desktop launcher. Jaroslav Řezník started packaging it in Copr, but hasn’t finished it yet. He might appreciate some help there!
Otherwise Cutegram supports the same set of features as the official client, and adds more. It supports secret chats, is better integrated to the desktop — using standard notifications, for instance — and has more options such as support for multiple accounts.
Plugin for Pidgin
If you’re accustomed to traditional desktop IM clients, or want to have Telegram together with other services in one app, a 3rd-party plugin for Pidgin might be a better option. It can also be found in Copr. To install, run the following commands:
sudo dnf install telegram-purple
The plugin doesn’t support Telegram-specific emoticons and stickers. However, you can for example send and receive files, and pictures are shown directly in the chat, like in official clients. Most importantly, it supports secret chats.
For those who prefer the command line, there’s also an unofficial CLI client. It’s again available in Copr and you can install it running the following commands:
sudo dnf install telegram-cli
It obviously doesn’t support the graphical features such as emoticons or stickers, but covers a fair share of Telegram features, such as sending and receiving files or secret chats.
The official web client, which you can find at web.telegram.org, supports the same features and has the same interface as the official desktop client which means it also lacks support for secret chats.
Note: The official telegram client from copr has been renamed telegram-desktop. One now has to run
Paul W. Frields
@Espen: Thank you! Article has been corrected.
The official Telegram Desktop client is currently pretty broken esp. under Plasma 5 (and I suspect also in Gnome Wayland) because of their insistence to bundle a patched Qt5 fork instead of the system-wide one. Telegram’s Qt fork uses XEmbed for systray icons under Linux and therefore bugs like these: https://github.com/telegramdesktop/tdesktop/issues/702
And since they also refuse to implement Ctrl-Q to quit the app < https://github.com/telegramdesktop/tdesktop/issues/703 >, I find Telegram Desktop currently rather unusable.
I’m also trying to package Cutegram but my efforts are currently on hold.
The security of Telegram is rather questionable, so I wouldn’t bother with it:
Yes, some people have concerns about the security of the protocol design. On the other hand, it’s been out and used for 2 years, 2 cracking contents have been run and still no one has come up with a working exploit. But I’m glad we’re having such conversations and it’s IMHO a plus for Telegram because we can at least examine the protocol. With other popular services such as Messenger, Skype, Whatsapp,… the protocol is just a black box for us and we have no idea what we’re using.
I’ll be damned if I give my phone number to chat providers. That’s giving the identity thieves an free extra piece of the puzzle.
I understand the value two-factor authentication, but including my cell phone number reduces security.
In group chats only your contacts can see your number and you can invite others by giving them join link. You don’t need to add them to contacts.
Tthere was a new update that was produced about 20 minutes ago. I don’t know if it pertains to Fedora 22.
Telegram is not different from other closed services. Centralized is the wrong way to do messaging. Telephone networks are federated, email is federated. This service is not. A proprietary service is hiding behind the open APIs, don’t get fooled by it.
Promote Jabber/XMPP instead, Telegram is snake oil.
I basically agree with you. Federation is a big plus for a service. But it’s also its biggest limitation. If you have different server providers, you can’t assure availability of advanced features. One server supports this, another one supports that. And you end up with a service that generally only supports the bare minimum (text messaging) just like email. Users don’t care if it’s federated or not, they want to have easy file sharing, good mobile clients etc. I also use Jabber and as much as I like it, I must say it doesn’t provide anything of it. The convenience and ease of use is not even remotely comparable with Telegram. My family relatives just wouldn’t use Jabber on their phones and I’d rather use Telegram with them than Messenger, Hangouts and others because it’s much more open than them.
And a fledgling Telegram app is on the Ubuntu Phone, and by extension the Fedora Phone Project. FPP FTW!!
Cutegram doesn’t support Stickers.
You left out the best client, which is the Chrome extension.
I successfully packaged Cutegram, based on efforts already done by Buschmann23 from openSUSE. I packaged it on OBS as well: https://software.opensuse.org/package/cutegram
Anybody feel free to pick up Cutegram and its dependencies for inclusion in Fedora’s main repos or a COPR. My OBS repo is mainly for me, which is why I also don’t build 32 bit packages.
I packaged Cutegram on FZUG repository: http://repo.fdzh.org/FZUG , spec: http://github.com/FZUG/repo
Anyone has experience with sigram? It looks so nice but I dont get it to work…
Cutegram is a fork of Sigram and has gone much further. Development of Sigram has stalled, no progress in the last year.
There is no tray icon under Gnome in Fedora 22! This one fact makes it a PITA
Actually, it is. It is hidden inside bottom left corner
Telegram seems to be a great Messenger, in fact I consider it the best alternative to Whatsapp and all the other mobile messengers since it is available on pretty all the platforms. However, there are some things I hope will be improved in the future. The first thing I notices is that it should be possible to sync with Google Contacts (respectively the Fedora Contacts which is connected with Google) even without using the mobile version of Telegram.
telegram-cli does not need Copr.
Autoupdate can be disabled, though your repository doesn’t repack newer versions – could you please repack? latest one is 0.9.6.
Also, new entry is crated on auto-update, if autoupdate is disabled on first run, it won’t create a new entry.