Skip to content

Zoxcore/trifa_material

Repository files navigation

TRIfA Material

Automated screenshots:

Build Status

Github: Android CI Last release Translations GPLv3+

Development Snapshot Version

the latest Development Snapshot can be downloaded from here

Installation & starting the App [Linux, Windows and MacOS]

                               

  • Install (minimum) JDK 17 as your default java
  • Download or checkout the source repository
  • enter the trifa_material directory
  • run:
    • Linux: ./gradlew run
    • Windows: gradlew.bat run
    • MacOS: ./gradlew run
    • raspi 64bit:
      export MESA_EXTENSION_OVERRIDE="-GL_ARB_invalidate_subdata"
      ./gradlew run
      
    • Asahi Linux:
      export MESA_EXTENSION_OVERRIDE="-GL_ARB_invalidate_subdata"
      export MESA_GL_VERSION_OVERRIDE=3.0
      ./gradlew run
      
    • NixOS:
      chmod a+x trifa-material-x86_64.appimage
      nix-shell -p appimage-run
      appimage-run trifa-material-x86_64.appimage
      

or download any of the release packages

Features

  • One to one chat with friends
  • use Tor Proxy (to hide your IP address)
  • reliable File transfers
  • Drag & Drop for File transfers with friends
  • NGC (new group chats)
  • Group Images in NGC group chats
  • Drag & Drop for Images in NGC group chats
  • Group History Sync (the last 130 minutes)
  • Notifications
  • Multiaccount Support
  • Screensharing
  • Audio calls
  • Noise Suppression for Audio Calls
  • Video calls
  • Screenshots
  • Emoticons
  • Emoji Popup while you type (activate by typing :smile for example)
  • And many more options!

Help Translate the App in your Language

Use Weblate: https://hosted.weblate.org/projects/trifa-a-tox-client-for-android/trifa-material/

Remove my Background from the Camera Video like Zoom or MS Teams does (Linux only!)

check instructions on how to do it here: https://github.com/floe/backscrub

Add Acoustic Echo Cancellation (AEC) to your microphone input (Linux only!)

Activate AEC on Linux with pulseaudio.
You need to have an audio in source already plugged in (like a headset with a microphone)

pactl unload-module module-echo-cancel
pactl load-module module-echo-cancel \
 aec_method=webrtc \
 aec_args='noise_suppression=1,intelligibility_enhancer=0,comfort_noise=0' \
 source_name=echocancel sink_name=echocancel1

pacmd set-default-source echocancel
pacmd set-default-sink echocancel1

to unload the AEC again

pactl unload-module module-echo-cancel

Capture Video and Audio

ffmpeg lib is used to capture Video and Audio.
The Java and JNI parts are built here: https://github.com/zoff99/ffmpeg_av_jni

Notifications

Java can do Notifications on Windows properly, but on macOS and Linux a native library is needed.
The Java and JNI parts are built here: https://github.com/zoff99/jni_notifications

BOM (Bill of materials)

What dependencies are used by trifa material:
https://github.com/Zoxcore/trifa_material/releases/download/nightly/bom_implementation.txt

Full list of compile time dependencies:
https://github.com/Zoxcore/trifa_material/releases/download/nightly/bom_compileclasspath.txt

Full list of run time dependencies:
https://github.com/Zoxcore/trifa_material/releases/download/nightly/bom_runtimeclasspath.txt

Custom fonts

NotoColorEmoji.ttf
downloaded from this repo https://github.com/googlefonts/noto-emoji
https://github.com/googlefonts/noto-emoji/raw/main/fonts/NotoColorEmoji.ttf

NotoSans-Regular.ttf
NotoSans-SemiBold.ttf
both downloaded from https://fonts.google.com/noto/specimen/Noto+Sans

Noto-COLRv1_normal_chars_removed.ttf

this is made by removing all normal characters like SPACE and NUMBERS from Noto-COLRv1.ttf (from this repo https://github.com/googlefonts/noto-emoji/tree/main/fonts)


Any use of this project's code by GitHub Copilot, past or present, is done without our permission. We do not consent to GitHub's use of this project's code in Copilot.