Jump to content
From ArchWiki

Telegram is a cloud-based cross-platform instant messaging service with optional end-to-end encryption. Account creation requires a phone number.

Note: Although the telegram client(s) are open source, the server side is proprietary and centralised, therefore having privacy issues. Use at your own risk as data is controlled by a centralised company.

## Installation

You can use one of following methods in order to use Telegram:

### Graphical clients

- Telegram Desktop — The official application built by Arch Linux.

  https://desktop.telegram.org || telegram-desktop

- Kotatogram — Unofficial experimental Telegram Desktop fork.

  https://kotatogram.github.io/ || kotatogram-desktopAUR

### Web-based clients

Two official browser-agnostic clients exist: Telegram WebK and Telegram WebA, while the Telegram Chrome app for Chromium-based browser is also available. There are also third-party clients:

- Franz — An open-source web-based application that can be used for various instant messaging software.

  https://meetfranz.com/ || franzAUR

- Rambox — An alternative to Franz, no longer open source, that offers all features of its counterpart.

  https://rambox.app/ || rambox-binAUR

### Chat client plugins

Some multi-purpose chat clients provide a plugin for Telegram:

- Pidgin — libpurple Telegram plugin implemented using official tdlib client library. Needs TD_API_ID and TD_API_HASH env vars to be set for makepkg.

  https://github.com/ars3niy/tdlib-purple || telegram-tdlib-purple-gitAUR

- Telepathy — The Morse backend provides capability of connecting the default messenger to Telegram.

  https://github.com/TelepathyQt/telepathy-morse || telepathy-morse

- Telepathy — The libpurple telepathy backend, in conjunction with telegram-tdlib-purple-gitAUR allows access to Telegram.

  https://telepathy.freedesktop.org || telepathy-haze

### Command-line clients

- Telegram messenger CLI — A command-line interface for Telegram which uses the readline interface.

  https://github.com/kenorb-contrib/tg || telegram-cli-gitAUR

- ncTelegram — A ncurses Telegram client developed in Python with the urwid library.

  https://github.com/Nanoseb/ncTelegram || nctelegram-gitAUR

- tg — Telegram terminal client.

  https://github.com/paul-nameless/tg || telegram-tgAUR

- nchat — A terminal-based chat client with support for Telegram.

  https://github.com/d99kris/nchat || nchat-gitAUR

- telega.el — GNU Emacs Telegram client.

  https://github.com/zevlg/telega.el || not packaged? search in AUR

- telegram-send — A command-line tool to directly send messages or files via Telegram.

  https://github.com/rahiel/telegram-send || python-telegram-sendAUR

## Tips and tricks

### GTK dialogs in Telegram Desktop

If you want to use GTK file dialogs instead of Qt ones, set `QT_QPA_PLATFORMTHEME` environment variable to `gtk3`.

### KDE dialogs in Telegram Desktop

If you want to use KDE file dialogs instead of Qt ones, set `QT_QPA_PLATFORMTHEME` environment variable to `xdgdesktopportal`.

### SVG icon theme in Telegram Desktop

If you want to use an icon theme based on svg image (e.g. papirus-icon-theme) install qt5-svg. See Qt#Icon theme is not applied for details.

### Wayland support

See GNOME/Troubleshooting#Cursor size or theme issues on Wayland.

See Wayland#Qt for generic instructions.

### xdg-open in Telegram Desktop

If you want to use xdg-open on t.me links and receive an error not finding a handler for tg:

    xdg-mime default org.telegram.desktop.desktop application/x-xdg-protocol-tg
    xdg-mime default org.telegram.desktop.desktop x-scheme-handler/tg

### Failed to set real-time priority for thread: Operation not permitted

If you get the following error

    $ telegram-desktop

    [ALSOFT] (EE) Failed to set real-time priority for thread: Operation not permitted (1)

Install realtime-privileges, add yourself to the `realtime` group and reboot. See Realtime process management#Configuring PAM for details.

### HiDPI scaling

If you have Qt scaling enabled on your system, and the scaling factor is not an integer, you may encounter problems like pixelated images and icons. you may need to disable high-DPI scaling for Telegram separately.

Copy `/usr/share/applications/org.telegram.desktop.desktop` to your user-specific applications and edit it as follows:

    $HOME/.local/share/applications/telegramdesktop-no-scaling.desktop

    ...
    Exec=env -u QT_SCREEN_SCALE_FACTORS telegram-desktop -- %u
    ...

You may need to update the database of desktop entries.

### Audio backend

As Telegram makes use of OpenAL, it is possible to configure the audio settings by editing its config files, i.e. `~/.config/alsoft.conf`, or the environment variables listed here.

In case sound is not working due to an invalid audio backend being used, it can be overwritten by setting the environment variable `ALSOFT_DRIVERS` or the `drivers` property in the `[general]` section of the OpenAL config. The drivers value `"pulse,"` for example would try pulseaudio first and then fallback to the default driver list.

### Choose correct web camera

Telegram version 3.7.1 does not allow to select the web camera to use in video conference. If you want to force telegram to use a different camera, as a workaround you can disable the unwanted camera device as described in [1].

### Fcitx support for Qt 6 Telegram

Telegram-desktop is built against Qt 6 since 3.4.2-2. Users upgrading from an older version might notice Fcitx stop working for this application. To make it work again, install fcitx-qt6 or the fcitx-im group. If using Fcitx5, install fcitx5-im.

### Changing the default file browser

Telegram Desktop uses the File Manager DBus Interface to open the file browser. The spec does not allow to choose the preferred one, ensure you have only one file browser installed.

Do not confuse file browsers with file dialogs which are parts of toolkits and are covered by #GTK dialogs in Telegram Desktop and #KDE dialogs in Telegram Desktop.

## See also

- Arch Linux - Unofficial group for discussing everything about Arch Linux.
- ArchWikiBot - Inline bot for searching through ArchWiki pages.
- Planet Arch Linux & News - Channel with recent Planet Arch updates and Latest News in one place.
- Arch Linux: Recent package updates - Channel with recent package updates in Arch Linux repositories.
- Arch Linux News - Channel with news from Arch web site (not updated since 2018).
- Planet Arch - Channel with posts from Planet Arch web site (not updated since 2018).

Category:

- Instant messaging

Hidden category:

- Pages with missing package links