Skip to content

Commit

Permalink
[TF] Readme + Changelog
Browse files Browse the repository at this point in the history
  • Loading branch information
thermatk committed Jul 27, 2019
1 parent 1f505ff commit c0f8b38
Show file tree
Hide file tree
Showing 13 changed files with 536 additions and 22 deletions.
382 changes: 382 additions & 0 deletions Changelog.md

Large diffs are not rendered by default.

Binary file added DigitalResistance.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
129 changes: 107 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,122 @@
## Telegram messenger for Android
[![Releases](https://img.shields.io/github/release/Telegram-FOSS-Team/Telegram-FOSS.svg)](https://github.com/Telegram-FOSS-Team/Telegram-FOSS/releases/latest)
[![Discussions](https://img.shields.io/badge/Offtopics-Telegram-blue.svg)](https://t.me/tfossofftop)

[![Donate](https://liberapay.com/assets/widgets/donate.svg)](https://liberapay.com/Telegram-FOSS/) or <img src="https://en.bitcoin.it/w/images/en/c/cb/BC_Logotype.png" alt="Bitcoin" height="25px" /> `1McafEgMvqAVujNLtcJumZHxp2UfaNByqs`

# Telegram-FOSS

[Telegram](https://telegram.org) is a messaging app with a focus on speed and security. It’s superfast, simple and free.
This repo contains the official source code for [Telegram App for Android](https://play.google.com/store/apps/details?id=org.telegram.messenger).

## Creating your Telegram Application
This is an unofficial, FOSS-friendly fork of the original [Telegram App for Android](https://github.com/DrKLO/Telegram).

This version of Telegram is available on FDroid:

[<img src="https://f-droid.org/badge/get-it-on.png"
alt="Get it on F-Droid"
height="80">](https://f-droid.org/app/org.telegram.messenger)

## Current Maintainers

- [thermatk](https://github.com/thermatk)
- [Bubu](https://github.com/Bubu)
- you? :)

## Contributors

- [slp](https://github.com/slp)
- [Sudokamikaze](https://github.com/Sudokamikaze)
- [l2dy](https://github.com/l2dy)
- [maximgrafin](https://github.com/maximgrafin)
- [vn971](https://github.com/vn971)
- [theel0ja](https://github.com/theel0ja)
- [AnXh3L0](https://github.com/AnXh3L0)
- [noplanman](https://github.com/noplanman)
- [vk496](https://github.com/vk496)

## Discussion

Join the [Telegram-FOSS Offtopics group](https://t.me/tfossofftop)

You can also join `#telegram-foss:matrix.org` via [matrix](https://matrix.to/#/#telegram-foss:matrix.org) or `#telegram-foss` on freenode.

## Changes:

*Replacement of non-FOSS, untrustworthy or suspicious binaries or source code:*
- Do location sharing with OpenStreetMap(osmdroid) instead of Google Maps
- Use Twemoji emoji set instead of Apple's emoji
- Google Play Services GCM replaced with Telegram's push service
- Has to show a notification on Oreo+, ask Google
- **SECURITY:** Old BoringSSL prebuilts are replaced with the newest upstream source code built at compile time
- **SECURITY:** Old FFmpeg prebuilts are replaced with the newest upstream source code built at compile time
- **SECURITY:** Bundled libWebP is updated

We welcome all developers to use our API and source code to create applications on our platform.
There are several things we require from **all developers** for the moment.
*Removal of non-FOSS, untrustworthy or suspicious binaries or source code and their functionality:*
- Google Vision face detection and barcode scanning (Passport)
- Google Wallet and Android Pay integration
- HockeyApp crash reporting and self-updates
- Google SMS retrieval. You have to type the code manually

1. [**Obtain your own api_id**](https://core.telegram.org/api/obtaining_api_id) for your application.
2. Please **do not** use the name Telegram for your app — or make sure your users understand that it is unofficial.
3. Kindly **do not** use our standard logo (white paper plane in a blue circle) as your app's logo.
3. Please study our [**security guidelines**](https://core.telegram.org/mtproto/security_guidelines) and take good care of your users' data and privacy.
4. Please remember to publish **your** code too in order to comply with the licences.
*Other:*
- Allow to set a proxy before login
- Added the ability to parse locations from intents containing a `geo:<lat>,<lon>,<zoom>` string
- Force static map previews from Telegram

### API, Protocol documentation
## Versioning

This repository contains tags to make tracking versions easier.

Versions are in form "v$UPSTREAM$RELEASE" where:

* $UPSTREAM is the public, visible version of upstream.
* $RELEASE is a letter ([a-z]) indicating minor releases between official versions (sometimes, upstream is updated without relating the changes to an specific version).

## API, Protocol documentation

Telegram API manuals: https://core.telegram.org/api

MTproto protocol manuals: https://core.telegram.org/mtproto

### Compilation Guide
## Building

**NOTE: Building on Windows is, unfortunately, not supported.
Consider using a Linux VM or dual booting.**
![WindowsSupport](/tgfoss-build-under-win.gif?raw=true)

**Important:**

1. You need the Android NDK, Go(Golang) and [Ninja](https://ninja-build.org/) to build the apk.

2. Don't forget to include the submodules when you clone:
- `git clone --recursive https://github.com/Telegram-FOSS-Team/Telegram-FOSS.git`

3. Build native FFmpeg and BoringSSL dependencies:
- Go to the `TMessagesProj/jni` folder and execute the following (define the paths to your NDK and Ninja):

```
export NDK=[PATH_TO_NDK]
export NINJA_PATH=[PATH_TO_NINJA]
./build_ffmpeg_clang.sh
./patch_ffmpeg.sh
./patch_boringssl.sh
./build_boringssl.sh
```
4. If you want to publish a modified version of Telegram:
- You should get **your own API key** here: https://core.telegram.org/api/obtaining_api_id and create a file called `API_KEYS` in the source root directory.
The contents should look like this:
```
APP_ID = 12345
APP_HASH = aaaaaaaabbbbbbccccccfffffff001122
```
- Do not use the name Telegram and the standard logo (white paper plane in a blue circle) for your app — or make sure your users understand that it is unofficial
- Take good care of your users' data and privacy
- **Please remember to publish your code too in order to comply with the licenses**
The project can be built with Android Studio or from the command line with gradle:
You will require Android Studio 3.4, Android NDK rev. 20 and Android SDK 8.1
`./gradlew assembleAfatRelease`
1. Download the Telegram source code from https://github.com/DrKLO/Telegram ( git clone https://github.com/DrKLO/Telegram.git )
2. Copy your release.keystore into TMessagesProj/config
3. Fill out RELEASE_KEY_PASSWORD, RELEASE_KEY_ALIAS, RELEASE_STORE_PASSWORD in gradle.properties to access your release.keystore
4. Go to https://console.firebase.google.com/, create two android apps with application IDs org.telegram.messenger and org.telegram.messenger.beta, turn on firebase messaging and download google-services.json, which should be copied to the same folder as TMessagesProj.
5. Open the project in the Studio (note that it should be opened, NOT imported).
6. Fill out values in TMessagesProj/src/main/java/org/telegram/messenger/BuildVars.java – there’s a link for each of the variables showing where and which data to obtain.
7. You are ready to compile Telegram.
# DIGITAL RESISTANCE
### Localization
![DIGITALRESISTANCE](/DigitalResistance.jpg?raw=true "DIGITALRESISTANCE")
We moved all translations to https://translations.telegram.org/en/android/. Please use it.
5 changes: 5 additions & 0 deletions metadata/en-US/changelogs/13400.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
* Telegram Passport
* Telegram FOSS:
* suggested locations and search are back
* location sharing fixes and https for map tiles
* everything from Telegram 4.7 and 4.8
5 changes: 5 additions & 0 deletions metadata/en-US/changelogs/13580.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
* New “Exceptions” section in Notification settings
* Improved password hashing algorithm to better protect Telegram Passport data
* Export your chats on Telegram Desktop
* Telegram-FOSS:
* sync boringSSL
2 changes: 2 additions & 0 deletions metadata/en-US/changelogs/13590.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
* Security update for bundled SQLite
* new Emoji 11!
6 changes: 6 additions & 0 deletions metadata/en-US/changelogs/14780.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
* new upstream release:
* Global permissions for groups
* Unified group settings
* Undo deleting chats and clearing chat history within 5 seconds
* New sorting options in Contacts
* New animations when uploading and downloading media
5 changes: 5 additions & 0 deletions metadata/en-US/changelogs/14970.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
* new upstream release:
* Apply blur and motion effects to chat backgrounds
* and other changes around backgrounds
* TFOSS:
* allow installing APKs
8 changes: 8 additions & 0 deletions metadata/en-US/changelogs/15170.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
* new upstream release:
* Autoplaying videos
* New settings for automatic media download
* Logout alternatives
* TFOSS:
* Fixed OpenStreetMaps
* Added other tile servers
* Other great fixes
7 changes: 7 additions & 0 deletions metadata/en-US/changelogs/15910.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
* new upstream release:
* delete anytime
* new icons and menus
* swipe to archive
* see who's online
* TalkBack support
* ...
5 changes: 5 additions & 0 deletions metadata/en-US/changelogs/16080.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
* Choose who can see your phone number.
* Add groups to "Always/Never Share" exceptions.
* Enjoy improved design.
* Connect a discussion group to your channel.
* Seamlessly integrate bots with web services.
4 changes: 4 additions & 0 deletions metadata/en-US/changelogs/16480.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
* Location-based group chats
* Animated stickers
* Transfer ownership of groups and channels
* A lot more!
Binary file added tgfoss-build-under-win.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit c0f8b38

Please sign in to comment.