base::lambda becomes just std::function and base::lambda_once becomes base::unique_function - a move-only wrapper around std::function. This is required because Visual C++ 2017 15.4.1 has a compiler bug with static member variables of class templates, they may collide. The std::function uses inheritance and virtual functions instead of custom vtables done by static members of class templates used in custom base::lambda implementation, so they work fine. |
||
---|---|---|
.appveyor | ||
.github | ||
.travis | ||
Telegram | ||
docs | ||
lib/xdg | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
LICENSE | ||
README.md | ||
appveyor.yml | ||
changelog.txt |
README.md
Telegram Desktop – Official Messenger
This is the complete source code and the build instructions for the alpha version of the official desktop client for the Telegram messenger, based on the Telegram API and the MTProto secure protocol.
The source code is published under GPLv3 with OpenSSL exception, the license is available here.
Supported systems
- Windows XP - Windows 10 (not RT)
- Mac OS X 10.8 - Mac OS X 10.11
- Mac OS X 10.6 - Mac OS X 10.7 (separate build)
- Ubuntu 12.04 - Ubuntu 16.04
- Fedora 22 - Fedora 24
Third-party
- Qt 5.3.2 and 5.6.2, slightly patched (LGPL)
- OpenSSL 1.0.1g (OpenSSL License)
- zlib 1.2.8 (zlib License)
- libexif 0.6.20 (LGPL)
- LZMA SDK 9.20 (public domain)
- liblzma (public domain)
- Google Breakpad (License)
- Google Crashpad (Apache License 2.0)
- GYP (BSD License)
- Ninja (Apache License 2.0)
- OpenAL Soft (LGPL)
- Opus codec (BSD License)
- FFmpeg (LGPL)
- Guideline Support Library (MIT License)
- Mapbox Variant (BSD License)
- Open Sans font (Apache License 2.0)
- Emoji alpha codes (MIT License)
- Catch test framework (Boost License)