1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00
qTox is a chat, voice, video, and file transfer IM client using the encrypted peer-to-peer Tox protocol.
Go to file
Marcel 9ebca88e11 Update INSTALL.md
improved
2014-09-09 21:22:23 +02:00
audio Add audio notifications 2014-06-27 14:36:44 -07:00
debian Update changelog 2014-09-03 05:22:41 -05:00
img Add Busy status 2014-07-03 20:00:14 +02:00
res Update DHT bootstrap list 2014-09-04 22:28:59 +02:00
smileys/default xD smiley 2014-09-01 18:03:31 +02:00
tools Update buildPackages.sh 2014-09-03 05:22:29 -05:00
translations Italian translation: update 2014-09-09 17:46:34 +02:00
ui use "white-space: nowrap" for div.date 2014-09-09 18:09:51 +02:00
widget cleanup 2014-09-09 18:29:03 +02:00
.gitignore added directory libs to gitignore 2014-07-03 14:40:44 +02:00
bootstrap.bat overwrite existing data when unzipping (windows) 2014-07-03 19:31:24 +02:00
bootstrap.sh Update bootstrap.sh, match nodes to wiki.tox.im 2014-09-01 00:25:22 -05:00
cdata.cpp Add unicode font, fix mem corruption 2014-06-30 04:40:18 +02:00
cdata.h Add nurupo's LICENSE on some refactored files 2014-06-27 20:41:54 +02:00
COPYING Add license 2014-06-28 00:31:30 +02:00
core.cpp Option to use custom list of bootstrap nodes 2014-09-04 23:13:59 +02:00
core.h Fix #235, Fix #84 2014-08-31 22:26:45 +02:00
coreav.cpp modify buildPackages 2014-09-01 13:45:48 -05:00
cstring.cpp Add nurupo's LICENSE on some refactored files 2014-06-27 20:41:54 +02:00
cstring.h Add nurupo's LICENSE on some refactored files 2014-06-27 20:41:54 +02:00
dialogs.ini Add video reception 2014-06-30 14:49:42 +02:00
filetransferinstance.cpp filetransfer: original buttons positions 2014-09-07 23:14:06 +07:00
filetransferinstance.h filetransfer: original buttons positions 2014-09-07 23:14:06 +07:00
friend.cpp change status light on incoming file request 2014-08-31 22:02:08 +07:00
friend.h change status light on incoming file request 2014-08-31 22:02:08 +07:00
friendlist.cpp Clean & remove old code and dependencies 2014-08-30 15:15:23 +02:00
friendlist.h Added GPL header to all source files 2014-07-06 12:19:45 -04:00
group.cpp Added GPL header to all source files 2014-07-06 12:19:45 -04:00
group.h Added GPL header to all source files 2014-07-06 12:19:45 -04:00
grouplist.cpp Added GPL header to all source files 2014-07-06 12:19:45 -04:00
grouplist.h Added GPL header to all source files 2014-07-06 12:19:45 -04:00
INSTALL.md Update INSTALL.md 2014-09-09 21:22:23 +02:00
LICENSE Add license 2014-06-28 00:31:30 +02:00
main.cpp sort the friendlist by contact Status 2014-08-23 02:12:37 +07:00
mainwindow.ui removed ClickableLabel, EditableLabelWidget, ElideLabel, EscLineEdit, 2014-09-01 11:08:02 +02:00
NURUPOWILLSUEME Update NURUPOWILLSUEME 2014-07-06 12:57:00 -04:00
qtox.pro files renaming 2014-09-07 00:28:26 +07:00
README.md minutiae 2014-09-01 15:52:51 -05:00
res.qrc filetransferinstance should use own pictures 2014-09-07 15:04:42 +07:00
settings.cpp Option to use custom list of bootstrap nodes 2014-09-04 23:13:59 +02:00
settings.h Option to use custom list of bootstrap nodes 2014-09-04 23:13:59 +02:00
smileypack.cpp filenames and paths processing little fix 2014-08-31 22:02:08 +07:00
smileypack.h define SMILEYPACK_DEFAULT_PATH 2014-08-10 19:04:09 +02:00
style.cpp removed "the super ugly hack", Widget derives from QMainWindow 2014-08-11 10:00:08 +02:00
style.h removed "the super ugly hack", Widget derives from QMainWindow 2014-08-11 10:00:08 +02:00

qTox

Powerful Tox client that tries to follow the Tox UI mockup while running on all major systems.
This GUI uses code from @nurupo'tos ProjectTox-Qt-GUI, in particular the "Core" Toxcore wrapper.
However, it is not a fork.

Features

  • One to one chat with friends
  • Group chats
  • File transfers, with previewing of images
  • Audio calls
  • Video calls (alpha)
  • Tox DNS
  • Translations in various languages

Downloads

This client runs on Windows, Linux and Mac natively.

Windows download
Mac download
Linux download (click "Last successful artifacts")

Screenshots

Note: The screenshots may not always be up to date, but they should give a good idea of the general look and features

Compiling on GNU-Linux

Acquiring dependencies

Compiling qTox requires several dependencies, however these are easily installable with your system's package manager. The step-by-step instructions assume Debian-style apt, but it should be easy enough to get equivalent packages with yum or pacman.

First, we need Qt 5.2 with a C++11 compatible compiler:

sudo apt-get install build-essential qt5-qmake qt5-default

toxcore and toxav, the client-agnostic network code for Tox, has several dependencies of its own (see its installation guide for more details):

sudo apt-get install libtool autotools-dev automake checkinstall check git yasm libopus-dev libvpx-dev

Finally, qTox itself requires OpenAL and OpenCV:

sudo apt-get install libopenal-dev libopencv-dev

Compilation

Having acquired all the dependencies, the following commands should get and compile qTox:

wget -O qtox.tgz https://github.com/tux3/qTox/archive/master.tar.gz
tar xvf qtox.tgz
cd qTox-master
./bootstrap.sh # This will automagically download and compile libsodium, toxcore, and toxav
qmake
make # Should compile to "qtox"

And that's it!

Building packages

qTox now has the experimental and probably-dodgy ability to package itself (in .deb form natively, and .rpm form with alien).

After installing the required dependencies, run bootstrap.sh and then run the buildPackages.sh script, found in the tools folder. It will automatically get the packages necessary for building .debs, so be prepared to type your password for sudo.

OSX Easy Install

Since https://github.com/ReDetection/homebrew-qtox you can easily install qtox with homebrew

brew install --HEAD ReDetection/qtox/qtox

OSX Full Install Guide

This guide is intended for people who wish to use an existing or new ProjectTox-Core installation separate to the bundled installation with qTox, if you do not wish to use a separate installation you can skip to the section titled 'Final Steps'.

Installation on OSX, isn't quite straight forward, here is a quick guide on how to install;

The first thing you need to do is install ProjectTox-Core with a/v support. Refer to the INSTALL guide in the ProjectTox-Core github repo.

Next you need to download QtTools (http://qt-project.org/downloads), at the time of writing this is at version 5.3.0. Make sure you deselect all the unnecessary components from the 5.3 checkbox (iOS/Android libs) otherwise you will end up with a very large download.

Once that is installed you will most likely need to set the path for qmake. To do this, open up terminal and paste in the following;

export PATH=/location/to/qmake/binary:$PATH

For myself, the qmake binary was located in /Users/mouseym/Qt/5.3/clang_64/bin/.

This is not a permanent change, it will revert when you close the terminal window, to add it permanently you will need to add echo the above line to your .profile/.bash_profile.

Once this is installed, do the following;

git clone https://github.com/tux3/qTox
cd toxgui
qmake

Now, we need to create a symlink to /usr/local/lib/ and /usr/local/include/

mkdir -p $HOME/qTox/libs
sudo ln -s /usr/local/lib $HOME/qTox/libs/lib
sudo ln -s /usr/local/include  $HOME/qTox/libs/include
Final Steps

The final step is to run

make

in the qTox directory, or if you are using the bundled tox core installation, you can use

./bootstrap.sh

Assuming all went well you should now have a qTox.app file within the directory. Double click and it should open!