Telegram

Материал из ALT Linux Wiki
Telegram
User-menu-Telegram.png
Telegram.png
Разработчик(и) Telegram FZ-LLC
Первый выпуск 14 августа 2013
Лицензия GNU GPL 3,
проприетарная
и GNU GPL
Сайт telegram.org
Примечание: В P10 Telegram удален из репозитория из-за устаревания пакета. Ожидайте новый релиз, используйте альтернативный клиент Cutegram или установите программу из другого источника.

Telegram — бесплатный кроссплатформенный мессенджер, позволяющий обмениваться текстовыми сообщениями и медиафайлами различных форматов.

Есть рецепт в epm!
epm play telegram


Установка из репозитория

Установите пакет telegram-desktop:

$ su -
# apt-get update
# apt-get install telegram-desktop
Примечание: Также Telegram можно использовать в клиенте обмена сообщения Pidgin посредством пакета purple-telegram


Установка с помощью epm

При наличии eepm установка официальной бинарной сборки на x86 возможна командой:

# epm play telegram

Исправление ошибки запуска (altbug #34182)

Если Telegram не запускается, а при его запуске через командную строку примерно такой вывод:

(telegram-desktop:7286): GLib-GObject-WARNING **: cannot register existing type 'GdkDisplayManager'
(telegram-desktop:7286): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed
(telegram-desktop:7286): GLib-GObject-CRITICAL **: g_object_new: assertion 'G_TYPE_IS_OBJECT (object_type)' failed
(telegram-desktop:7286): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(telegram-desktop:7286): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
(telegram-desktop:7286): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(telegram-desktop:7286): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
(telegram-desktop:7286): GLib-GObject-WARNING **: cannot register existing type 'GdkDisplay'
(telegram-desktop:7286): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed
(telegram-desktop:7286): GLib-GObject-CRITICAL **: g_type_register_static: assertion 'parent_type > 0' failed
(telegram-desktop:7286): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed
(telegram-desktop:7286): GLib-GObject-CRITICAL **: g_object_new: assertion 'G_TYPE_IS_OBJECT (object_type)' failed
Ошибка сегментирования

то необходимо изменить команду запуска Telegram - либо вынести ярлык на Рабочий стол, и указать в команде запуска следующую:

bash -c "XDG_CURRENT_DESKTOP=NONE telegram-desktop -- %u" 

(соответственно запуск из консоли будет аналогичный (bash -c можно опустить)). Либо выполнить от рута команду, которая поправит запуск из меню для всех пользователей:

$ su -
# sed -i "s#telegram-desktop -- %u#bash -c \"XDG_CURRENT_DESKTOP=NONE telegram-desktop -- %u\"#g" /usr/share/applications/telegram-desktop.desktop

Русификация

  1. Запустить приложение и войти в свою учетную запись
  2. В поиске найти робота Антона - telerobot
  3. В чате с ним написать locate tdesktop
  4. В ответ придет вложение - Russian.strings (по нажатию будет загружено в папку ~/Загрузки/Telegram Desktop)
  5. Переходим в настройки приложения, на клавиатуре набираем loadlang и выбираем скачанный файл
  6. После перезапуска приложения - оно будет на русском языке

Проблемы разработки Telegram

Во всех сборках Telegram Desktop с ffmpeg версии 4.0 и выше есть баг, связанный с проигрыванием голосовых сообщений, созданных в официальном клиенте для iOS:

Проблема заключается в том, что Telegram for iOS вставляет в файл несколько маркеров конца файла. Старые версии ffmpeg (< 4.0) их спокойно загружали, а новые (4.0+) уже выдают предупреждение. Telegram Desktop при получении кода ошибки от ffmpeg тут же прекращает воспроизведение аудиозаписи.


В бинарной сборке Telegram Desktop используется очень старая и уязвимая версия openssl. Лишь недавно они передвинули её на rolling тег 1.0.2.

Сборка в пакет

Темные иконки на темном фоне

Приложение содержит в своем составе свои собственные иконки для системного лотка. Но в некоторых темах иконок (например Breeze) имеются иконки, которые используются вместо "встроенных". В результате многие пользователи КДЕ столкнулись с тем, что при использовании темного оформления панелей (например Oxygen), иконка Telegram получается темной на темном фоне.

Можно переопределить свои иконки вместо тех, что имеются в используемой теме. Например, можно взять подходящие иконки с именами telegram-panel.svg, telegram-mute-panel.svg, telegram-attention-panel.svg и положить их в каталог ~/.local/share/icons/breeze/status/22

Набор светлых иконок для Breeze: Telegram-panel.svg Telegram-mute-panel.svg Telegram-attention-panel.svg Файл:Telegram-light-icons.tgz