This commit is contained in:
John Preston 2015-09-12 22:01:19 +03:00
commit 50ffde23d6
1 changed files with 67 additions and 58 deletions

View File

@ -1,10 +1,10 @@
## [Telegram Desktop](https://tdesktop.com) Official Telegram Messenger app # [Telegram Desktop][telegram_desktop] Official Messenger
This is complete source code and build instructions for alpha version of official desktop client for [Telegram](https://telegram.org) messenger, based on [Telegram API](https://core.telegram.org/) and [MTProto](https://core.telegram.org/mtproto) secure protocol. This is the complete source code and the build instructions for the alpha version of the official desktop client for the [Telegram][telegram] messenger, based on the [Telegram API][telegram_api] and the [MTProto][telegram_proto] secure protocol.
Source code is published under GPL v3, license is available [here](https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE). The source code is published under GPL v3, the license is available [here][license].
###Supported systems ## Supported systems
* Windows XP - Windows 10 (**not** RT) * Windows XP - Windows 10 (**not** RT)
* Mac OS X 10.8 - Mac OS X 10.10 * Mac OS X 10.8 - Mac OS X 10.10
@ -12,9 +12,9 @@ Source code is published under GPL v3, license is available [here](https://githu
* Ubuntu 12.04 - Ubuntu 14.04 * Ubuntu 12.04 - Ubuntu 14.04
* Fedora 22 * Fedora 22
###Third-party ## Third-party libraries
* Qt 5.3.2 and 5.5.0, slightly patched ([LGPL](http://qt-project.org/doc/qt-5/lgpl.html)) * Qt 5.3.2 and 5.5.0, slightly patched ([LGPL](http://doc.qt.io/qt-5/licensing.html))
* OpenSSL 1.0.1g ([OpenSSL License](https://www.openssl.org/source/license.html)) * OpenSSL 1.0.1g ([OpenSSL License](https://www.openssl.org/source/license.html))
* zlib 1.2.8 ([zlib License](http://www.zlib.net/zlib_license.html)) * zlib 1.2.8 ([zlib License](http://www.zlib.net/zlib_license.html))
* libexif 0.6.20 ([LGPL](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html)) * libexif 0.6.20 ([LGPL](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html))
@ -25,44 +25,45 @@ Source code is published under GPL v3, license is available [here](https://githu
* FFmpeg ([LGPL](https://www.ffmpeg.org/legal.html)) * FFmpeg ([LGPL](https://www.ffmpeg.org/legal.html))
* Open Sans font ([Apache License](http://www.apache.org/licenses/LICENSE-2.0.html)) * Open Sans font ([Apache License](http://www.apache.org/licenses/LICENSE-2.0.html))
###[Build instructions for Visual Studio 2013](https://github.com/telegramdesktop/tdesktop/blob/master/MSVC.md) ## Build instructions
###[Build instructions for XCode 6.4](https://github.com/telegramdesktop/tdesktop/blob/master/XCODE.md) * [Visual Studio 2013][msvc]
* [XCode 6.4][xcode]
###[Build instructions for XCode 6.4 for OS X 10.6 and 10.7](https://github.com/telegramdesktop/tdesktop/blob/master/XCODEold.md) * [XCode 6.4 for OS X 10.6 and 10.7][xcode_old]
* [Qt Creator 3.2.0 Ubuntu][qtcreator]
###[Build instructions for Qt Creator 3.2.0 Ubuntu](https://github.com/telegramdesktop/tdesktop/blob/master/QTCREATOR.md)
## Projects in Telegram solution ## Projects in Telegram solution
####Telegram * ### Telegram
tdesktop messenger [Telegram Desktop][telegram_desktop] messenger
####Updater * ### Updater
little app, that is launched by Telegram when update is ready, replaces all files and launches it back A little app, that is launched by Telegram when update is ready, replaces all files and launches it back.
####Packer * ### Packer
compiles given files to single update file, compresses it with lzma and signs with a private key, it is not built in **Debug** and **Release** configurations of Telegram solution, because private key is inaccessible Compiles given files to single update file, compresses it with lzma and signs with a private key. It is not built in **Debug** and **Release** configurations of Telegram solution, because private key is inaccessible.
####Prepare * ### Prepare
prepares a release for deployment, puts all files to deploy/{version} folder, for Win: Prepares a release for deployment, puts all current files to deploy/{version} folder.
* current tsetup{version}exe installer
* current Telegram.exe
* current Telegram.pdb (debug info for crash minidumps view)
* current tupdate{updversion} binary lzma update archive
for Mac: **Windows**:
* current tsetup{version}dmg * tsetup{version}.exe installer
* current Telegram.app * Telegram.exe
* current tmacupd{updversion} binary lzma update archive * Telegram.pdb (debug info for crash minidumps view)
* tupdate{updversion} binary lzma update archive
####MetaEmoji **Mac**:
* tsetup{version}.dmg
* Telegram.app
* tmacupd{updversion} binary lzma update archive
creates four sprites and text2emoji replace code * ### MetaEmoji
Creates four sprites and text2emoji replace code
* SourceFiles/art/emoji.png * SourceFiles/art/emoji.png
* SourceFiles/art/emoji_125x.png * SourceFiles/art/emoji_125x.png
* SourceFiles/art/emoji_150x.png * SourceFiles/art/emoji_150x.png
@ -70,15 +71,15 @@ creates four sprites and text2emoji replace code
* SourceFiles/art/emoji_250x.png * SourceFiles/art/emoji_250x.png
* SourceFiles/gui/emoji_config.cpp * SourceFiles/gui/emoji_config.cpp
####MetaStyle * ### MetaStyle
from two files and two sprites From two files and two sprites
* Resources/style_classes.txt * Resources/style_classes.txt
* Resources/style.txt * Resources/style.txt
* SourceFiles/art/sprite.png * SourceFiles/art/sprite.png
* SourceFiles/art/sprite_200x.png * SourceFiles/art/sprite_200x.png
creates two other sprites, four sprite grids and style constants code Creates two other sprites, four sprite grids and style constants code
* SourceFiles/art/sprite_125x.png * SourceFiles/art/sprite_125x.png
* SourceFiles/art/sprite_150x.png * SourceFiles/art/sprite_150x.png
* SourceFiles/art/grid.png * SourceFiles/art/grid.png
@ -89,11 +90,19 @@ creates two other sprites, four sprite grids and style constants code
* GeneratedFiles/style_auto.h * GeneratedFiles/style_auto.h
* GeneratedFiles/style_auto.cpp * GeneratedFiles/style_auto.cpp
####MetaLang * ### MetaLang
from langpack file Creates from languagepack file `Resources/lang.txt` language constants code and language file parse code:
* Resources/lang.txt
creates lang constants code and lang file parse code
* GeneratedFiles/lang.h * GeneratedFiles/lang.h
* GeneratedFiles/lang.cpp * GeneratedFiles/lang.cpp
[//]: # (LINKS)
[telegram]: https://telegram.org
[telegram_desktop]: https://desktop.telegram.org
[telegram_api]: https://core.telegram.org
[telegram_proto]: https://core.telegram.org/mtproto
[license]: LICENSE
[msvc]: MSVC.md
[xcode]: XCODE.md
[xcode_old]: XCODEold.md
[qtcreator]: qtcreator.md