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. |
||
---|---|---|
.appveyor | ||
.github | ||
.travis | ||
Telegram | ||
cotire | ||
doc | ||
docs | ||
lib/xdg | ||
modules | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
CMakeLists.txt | ||
LICENSE | ||
README.md | ||
appveyor.yml | ||
conanfile.txt | ||
kepka.spec |
README.md
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
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
-
Qt 5.9+ (LGPL)
-
OpenSSL 1.0.1g (OpenSSL License)
-
zlib 1.2.8 (zlib 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)