メモ:LinuxでTelegramを複数起動する

公開日

原文言語: 中国語 。 AI翻訳: 英語 日本語


Linuxで複数のTelegramを動かす方法を記録する。

2020/07/28 更新:
デスクトップ版Telegram 2.2でマルチアカウント切り替えに対応した


最初に思いついたのは、tgの実行ファイルを複数ダウンロードして別フォルダに置くこと(Windowsではそうしていた)。

でもLinuxではうまくいかなかった。


調べたらこれを見つけた: Github - Add multiple accounts in Telegram Desktop [Linux | MacOSX | Windows]
tgの -workdir パラメータでユーザーデータの保存先を分ける方法。

詳細手順:

  • tgのアカウントデータはデフォルトで ~/.local/share/TelegramDesktop/ にある。この下に username フォルダ(例:~/.local/share/TelegramDesktop/username/)を作り、そのアカウントのデータを置く
  • .desktop の起動ファイルを作り、-workdir を上の username フォルダに向ける
  • ファイルの場所は特に制限はなさそうだが、規約的には ~/.local/share/applications/ に置くのが推奨されていた
  • 起動ファイル内容:
Terminal window
[Desktop Entry]
Version=1.0
Name=Telegram MyUsername
Comment=Official desktop application for the Telegram messaging service
TryExec=/opt/Telegram/Telegram
Exec=/opt/Telegram/Telegram -workdir /home/{{your_user}}/.local/share/TelegramDesktop/username -- %u
Icon=telegram
Terminal=false
StartupWMClass=TelegramDesktop
Type=Application
Categories=Network;InstantMessaging;Qt;
MimeType=x-scheme-handler/tg;
Keywords=tg;chat;im;messaging;messenger;sms;tdesktop;
X-GNOME-UsesNotifications=true
X-Desktop-File-Install-Version=0.23

実行すると、tgのログイン画面が出る。


成功
と思ったらログインできない。アカウントを入れたあと internal server error が出る。
調べてもよく分からない。
.desktopTryExecExec を、ダウンロードしたtg実行ファイルに変えて動かしたら使えた。

ただ翌日、パラメータを元に戻しても使えた
たぶんネットワークの問題だったかも


tg標準の .desktop ファイルも見てみた:

Terminal window
$ cat /usr/share/applications/telegramdesktop.desktop
[Desktop Entry]
Version=1.0
Name=Telegram Desktop
Comment=Official desktop version of Telegram messaging app
TryExec=telegram-desktop
Exec=telegram-desktop -- %u
Icon=telegram
Terminal=false
StartupWMClass=TelegramDesktop
Type=Application
Categories=Chat;Network;InstantMessaging;Qt;
MimeType=x-scheme-handler/tg;
Keywords=tg;chat;im;messaging;messenger;sms;tdesktop;
X-GNOME-UsesNotifications=true

これを参考に、自分の .desktopComment を少し修正した。


最終効果: