Unofficial Telegram Desktop messaging app
Go to file
leha-bot 576d6aacb5 The first EXPERIMENTAL try to implement flt
These filters doesn't work though. It's a PoC how to modify that shit.
Caution: this commit contains obscene Russian words. You are warned.
2018-04-25 12:00:57 +03:00
.appveyor Run ctest on appveyor (#57) 2018-03-11 15:31:18 +03:00
.github Update links in CONTRIBUTING.md (#111) 2018-03-02 17:18:08 +03:00
.travis Add clutches for conan-limp 2018-01-12 23:23:38 +02:00
Telegram The first EXPERIMENTAL try to implement flt 2018-04-25 12:00:57 +03:00
cotire Apply patch to fix compile with cmake 3.11 2018-04-17 21:05:33 +03:00
doc Add cmake files 2017-12-20 14:38:02 +02:00
docs Remove obsolete files 2017-12-20 14:38:02 +02:00
lib/xdg Replaced old name from shortcuts and metadata package. 2018-01-17 21:20:46 +03:00
modules Add ALSA and PulseAudio support on Linux 2017-12-20 14:38:02 +02:00
.gitattributes Implement AppVeyor (#3025) 2017-02-18 20:23:50 +01:00
.gitignore Add vim service files to .gitignore 2018-01-17 19:37:34 +03:00
.travis.yml Enable only PR builds on Travis 2018-01-13 03:39:01 +02:00
CMakeLists.txt Renamed project name in CMakeLists. 2018-04-22 16:16:24 +03:00
LICENSE license openssl exception added 2015-10-03 14:34:56 +03:00
README.md README: increase required CMake version (#124) 2018-03-12 19:04:51 +03:00
appveyor.yml Enable release publishing (#57) 2018-03-11 03:53:52 +03:00
conanfile.txt Disable unused conan repos 2018-01-12 23:23:38 +02:00
kepka.spec Added additional build definitions for packaged build: 2018-01-19 10:54:09 +02:00

README.md

Version Build Status Build status

Kepka - Unofficial Telegram Desktop fork from pro.cxx community

This is the complete source code and the build instructions for the Kepka's alpha version based on the Telegram API and the MTProto secure protocol.

Build instructions

Linux, macOS

What you need to have installed:

  • Qt 5.9+ (with private modules, like qtbase5-private-dev)
  • OpenSSL (conan installs this if you use conan)
  • OpenAL-soft
  • FFmpeg with swscale and swresample libs
  • zlib
  • opus (libopus-dev)

Debian/Ubuntu:

# apt-get install qtbase5-private-dev zlib1g-dev libopenal-dev libavcodec-dev libavresample-dev libswscale-dev libopenal-data libopenal1 libavutil-dev

You most likely have to rebuild ffmpeg with --enable-swresample --enable-swscale

After that, go to the next section.

Fedora:

# dnf install rpm-build rpmdevtools mock mock-rpmfusion-free

Add yourself to mock group (you must run this only for the first time after installing mock):

sudo usermod -a -G mock $(whoami)

You need to relogin to your system or run:

newgrp mock

Create RPM build base directories:

rpmdev-setuptree

Download sources:

spectool -g -R kepka.spec

Generate SRPM:

rpmbuild -bs kepka.spec

Start mock build sequence:

mock -r fedora-$(rpm -E %fedora)-$(uname -m)-rpmfusion_free --rebuild ~/rpmbuild/SRPMS/kepka*.src.rpm

Configuring and building

Provide paths to OpenAL-soft and Qt5 in CMAKE_PREFIX_PATH variable when configuring.

ccache -o sloppiness=pch_defines,time_macros
mkdir _conan_build_
cd _conan_build_
conan install .. --build missing
cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug -DCMAKE_PREFIX_PATH="/usr/local/opt/qt5/;/usr/local/opt/openal-soft" ..
ninja

Windows

Install vcpkg (no need to integrate, just install), python 3.5, cmake, Qt 5.9 or later and Visual Studio 2017 or later, and set the following environment variables:

  • QTDIR: directory where Qt binary distribution is installed, e.g. C:\Qt\5.9.1\msvc2017_64
  • VCPKG: directory where VCPKG is installed, e.g. C:\vcpkg

After that, execute the following cmd commands from Visual Studio developer command prompt:

$ set PATH=c:\Python35;%PATH%
$ "%VCPKG%\vcpkg" install --triplet x64-windows openal-soft openssl opus zlib ffmpeg
$ mkdir build
$ cd build
$ set PATH=%QTDIR%\bin;%PATH%
$ cmake -G"Visual Studio 15 2017 Win64" -DCMAKE_TOOLCHAIN_FILE="%VCPKG%\scripts\buildsystems\vcpkg.cmake" -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
$ cmake --build . --config RelWithDebInfo

Preview of Telegram Desktop

The source code is published under GPLv3 with OpenSSL exception, the license is available here.

Supported systems

  • Windows 7 - 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