Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/torx-chat/torx-gtk4

GTK4 client implementing the TorX Library
https://github.com/torx-chat/torx-gtk4

c chat chat-application gtk4 linux macos osx tor windows

Last synced: 25 days ago
JSON representation

GTK4 client implementing the TorX Library

Awesome Lists containing this project

README

        

Logo

### TorX GTK4 Client (torx-gtk4)
This page is primarily for developers and contributors.

If you are simply looking to download and run TorX, go to [Download](https://torx.chat/#download)

If you want to contribute, see [Contribute](https://torx.chat/#contribute) and our [TODO Lists](https://torx.chat/todo.html)

#### Build Instructions:
##### Linux:
NOTICE: GTK4 version >= 4.10 required (libgtk-4-dev). The GTK project implemented major breaking changes to GTK4 at version 4.10, and we are early adopters of those changes.

If you are using Debian, you need Trixie (Debian 13) repositories or above.

If you are using Ubuntu, this means Mantic (Ubuntu 23) repositories or above.

If you want to try on a LiveCD, here are some Trixie liveCDs

###### Install build dependencies:
`sudo apt install git cmake pkg-config libgtk-3-dev libgtk-4-dev libsodium-dev libevent-dev libsqlcipher-dev build-essential libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev`

###### Install runtime dependencies:
`sudo apt install tor snowflake-client obfs4proxy`

###### Clone the repository
`git clone https://github.com/TorX-Chat/torx-gtk4 && cd torx-gtk4`

###### For building TorX normally:
`cmake -D TORX_TAG=main -B build && cd build && make && cd .. && ./build/torx-gtk4`

###### For building TorX with debug symbols, for gdb:
`cmake -DCMAKE_BUILD_TYPE=Debug -D TORX_TAG=main -B build && cd build && make && cd .. && export G_DEBUG=fatal-criticals && gdb -ex "set print thread-events off" -ex "break breakpoint" -ex run ./build/torx-gtk4`

###### For building TorX with debug symbols, for valgrind:
`cmake -DCMAKE_BUILD_TYPE=Debug -D TORX_TAG=main -B build && cd build && make && cd .. && valgrind --track-origins=yes --leak-check=full ./build/torx-gtk4`

###### For installing TorX (after building):
`cd build && sudo make install`

###### For uninstalling TorX (after installing):
`sudo xargs rm < install_manifest.txt`

##### OSX:
See Linux instructions, then modify as appropriate. CMakeLists.txt may need modifications. When successful, contact us so that we can add instructions.

##### Windows:

Install MSYS2 then open a terminal by clicking "MSYS2 MINGW64"
```
pacman -Syu && exit
pacman -S git mingw-w64-x86_64-gcc mingw-w64-x86_64-gtk4 mingw-w64-x86_64-libsodium mingw-w64-x86_64-libevent mingw-w64-x86_64-sqlcipher mingw-w64-x86_64-cmake mingw-w64-x86_64-toolchain mingw-w64-x86_64-gtk3 mingw-w64-x86_64-gtk4 base-devel mingw-w64-x86_64-gstreamer mingw-w64-x86_64-gst-plugins-base
git clone https://github.com/TorX-Chat/torx-gtk4 && cd torx-gtk4
cmake -G "Unix Makefiles" -D TORX_TAG=main -B build/ && cd build && make clean && make
GSK_RENDERER=cairo build/torx-gtk4.exe
```

#### Voluntary Contribution Licensing Agreement:
Subject to implicit consent: Ownership of all ideas, suggestions, issues, pull requests, contributions of any kind, etc, are non-exclusively gifted to the original TorX developer without condition nor consideration, for the purpose of improving the software, for the benefit of all users, current and future. Any contributor who chooses not to apply this licensing agreement may make an opt-out statement when making their contribution.
Note: The purpose of this statement is so that TorX can one day be re-licensed as GPLv2, GPLv4, AGPL, MIT, BSD, CC0, etc, in the future, if necessary. If you opt-out, your contributions will need to be stripped if we one day need to re-license and we're unable to contact you for your explicit consent. You may opt-out, but please don't.

#### Screenshots:
Screenshot
Screenshot
Screenshot
Screenshot
Screenshot
Screenshot
Screenshot