Fernschreiber is a Telegram client for Sailfish OS
Find a file
2020-11-26 15:22:44 +01:00
db Search for emojis with :<keyword> 2020-10-18 18:57:01 +02:00
icons Change logo/icon - thanks to @iamnomeutente 2020-10-16 23:00:08 +02:00
images multiple message selection 2020-11-14 23:50:12 +01:00
qml Merge pull request #200 from monich/optimizer 2020-11-26 15:11:01 +01:00
rlottie@bf3d272df3 Added rlottie submodule 2020-11-11 03:12:52 +02:00
rpm Display all error messages (let's see how it works...) 2020-11-15 23:29:04 +01:00
src Added storage optimizer option 2020-11-24 00:17:27 +02:00
tdlib/include/td Some clean-up and preparation for multi-target builds 2020-09-26 15:53:47 +02:00
translations Update translation files 2020-11-26 15:22:44 +01:00
.gitignore Initialize Fernschreiber repository 2020-08-10 14:17:29 +02:00
.gitmodules Added rlottie submodule 2020-11-11 03:12:52 +02:00
harbour-fernschreiber.desktop Initialize Fernschreiber repository 2020-08-10 14:17:29 +02:00
harbour-fernschreiber.pro Add MceInterface object 2020-11-23 01:38:06 +02:00
LICENSE Initial commit 2020-08-10 13:50:11 +02:00
README.md Add debug description to README 2020-11-23 00:08:04 +01:00

Fernschreiber

A Telegram client for Sailfish OS

Authors

Sebastian J. Wolf sebastian@ygriega.de and several contributors

Contributions

Fernschreiber wouldn't be the same without all the people helping in making it better. Thank you very much to all contributors!

Code (Features, Bugfixes, Optimizations etc.)

  • Chat list model, chat model, notifications, TDLib receiver, animated stickers, project dependencies, qml/c++ optimizations, chatPhoto, TDLibFile, code reviews, logging categories: Slava Monich
  • Chat info page, performance improvements to chat page, location support, app initialization/registration with Telegram, project dependencies, emoji handling, qml/js optimizations, multi-message actions, i18n fixes, chat permission handling, code reviews, logging categories: jgibbon
  • Copy message to clipboard Christian Stemmle

Logo/Icon

Translations

License

Licensed under GNU GPLv3

Build

Simply clone this repository and ensure to have all submodules imported as well (e.g. by using git submodule update --init). Then use the project file harbour-fernschreiber.pro to import the sources in your SailfishOS IDE. To build and run Fernschreiber or an application which is based on Fernschreiber, you need to create the file harbour-fernschreiber/src/tdlibsecrets.h and enter the required constants in the following format:

#ifndef TDLIBSECRETS_H
#define TDLIBSECRETS_H
const char TDLIB_API_ID[] = "42424242";
const char TDLIB_API_HASH[] = "1234567890abcdef1234567890abcdef";
#endif // TDLIBSECRETS_H

You get the Telegram API ID and hash as soon as you've registered your own application on https://my.telegram.org.

Moreover, you need to have a compiled version of TDLib in the sub-directory tdlib. This sub-directory must contain another sub-directory that fits to the target device architecture (e.g. armv7hl, i486). Within this directory, there needs to be a folder called lib that contains at least libtdjson.so. For armv7hl the relative path would consequently be tdlib/armv7hl/lib.

Debug

Fernschreiber does only output a few TDLib messages by default. To get its own debug log messages, you can either run a debug build to see all of them or use the environment variable QT_LOGGING_RULES to specify/filter which messages you'd like to see.

Run QT_LOGGING_RULES="fernschreiber.*=true" harbour-fernschreiber to see all messages or replace the * with specific logging categories. You'll find the logging category inside the corresponding .cpp file for backend usage or you can use JS to only see frontend messages.

Contribute

If you want to contribute bug fixes, improvements, new features etc. please create a pull request (PR). PRs are always welcome and will be reviewed as soon as possible, but may take some time. :)

Credits

This project uses

Thanks to the maintainers of the used components and - again - all contributors to Fernschreiber!