38 lines
2.2 KiB
Markdown
38 lines
2.2 KiB
Markdown
|
# PlChat - A Pleroma Chat Client
|
||
|
|
||
|
Pleroma chat client
|
||
|
|
||
|
# Usage
|
||
|
Run the binary or `python plchat.py`. Log in to your account on the fediverse and start chatting. If your server runs behind a reverse proxy, it will need to proxy websocket connections.
|
||
|
|
||
|
## Installation
|
||
|
Installation instructions for PlChat. If you are looking to package this program or build from source, skip to Building From Source or Packaging down below.
|
||
|
|
||
|
### Windows
|
||
|
|
||
|
### Linux
|
||
|
|
||
|
### MacOS
|
||
|
|
||
|
## Building From Source or Packaging
|
||
|
PlChat comes with a Makefile for compiling to a binary, but it is of course possible to run the source directly with just `python plchat.py`. The easiest way to package PlChat is just to make sure the dependencies are installed and write a script that sets the appropriate pythonpath and runs plchat.py.
|
||
|
Otherwise you can see below for instructions on building the binary.
|
||
|
|
||
|
### Runtime Depencies
|
||
|
You will need QtPy and a compatible set of bindings, either PyQt4/5 or Pyside/PySide2, all available on PyPI.
|
||
|
You will also need the following system libraries: Qt4 or 5 (depending on your bindings), Secret Service (on linux or BSD), and libmagic.
|
||
|
And, obviously, a copy of python. Python3.5+ is the only thing I will support but other versions may work.
|
||
|
|
||
|
### Building
|
||
|
You will need the following packages from pypi: keyring, appdirs, python-magic, python-dateutil, and websockets.
|
||
|
You will also need all runtime dependencies listed above, as well as nuitka3 and a C compiler compiler. Nuitka supports the following compilers:
|
||
|
|
||
|
* gcc 5.1+ or g++ 4.4+
|
||
|
* clang on macOS or BSD
|
||
|
* MinGW64/Visual Studio 2019+/clang-cl on Windows
|
||
|
|
||
|
Cross compilation is not supported so you will need to compile on the OS and architecture that you are targeting.
|
||
|
|
||
|
Once everything is installed and in your path it should be a simple `make && sudo make install` to build everything. The resulting binary will have it's own copy of all the python build dependencies, which can then be uninstalled or ignore. You can also `make systemlibs` if you wish, and the resulting binary will rely on system packages for all python modules listed above as build depencies.
|
||
|
|
||
|
Nuitka produces very large binaries. UPX works well if you want to reduce the size.
|