ring-client-gnome
*****************

Ring-client-gnome is a Ring client written in GTK+3. It uses libRingClient to
communicate with the Ring daemon and for all of the underlying models and their
logic. Ideally ring-client-gnome should only contain UI related code and any
wrappers necessary for interacting with libRingClient.

Packages for Debian/Ubuntu/Fedora can be found on http://ring.cx

More info about the Ring project or this client can be found on their respective wiki pages:
- https://projects.savoirfairelinux.com/projects/ring/wiki
- https://projects.savoirfairelinux.com/projects/ring-gnome-client/wiki


Requirements
==================

- Ring daemon
- libRingClient
- GTK+3 (3.10 or higher)
- Qt5 Core
- X11
- gnome-icon-theme-symbolic (certain icons are used which other themes might be missing)
- libebook1.2 / evolution-data-server (3.10 or higher)

On Debian/Ubuntu these can be installed by:
    sudo apt-get install g++ cmake libgtk-3-dev qtbase5-dev libclutter-gtk-1.0-dev gnome-icon-theme-symbolic libebook-1.2-dev

On Fedora:
    yum install gcc-c++ cmake gtk3-devel qt5-qtbase-devel clutter-gtk-devel gnome-icon-theme-symbolic evolution-data-server-devel

The build instruction for the daemon and libRingClient can be found on their respective wiki pages:
- https://projects.savoirfairelinux.com/projects/ring-daemon/wiki
- https://projects.savoirfairelinux.com/projects/libringclient/wiki/Wiki


Compiling
==================

In the project root dir:
    mkdir build
    cd build
    cmake ..
    make

Then simply run ./ring-client-gnome


Building without installing Ring daemon and libRingClient
==================

It is possible to build ring-client-gnome without installing the deamon and
libRingClient on your system (eg: in /usr or /usr/local):

1. build the daemon
2. when building libRingClient, specify the location of the daemon lib in the
   cmake options with -DRING_BUILD_DIR=, eg:
   -DRING_BUILD_DIR=/home/user/ring/daemon/src
3. to get the proper headers, we still need to 'make install' libRingClient, but
   we don't have to install it in /usr, so just specify another location for the
   install prefix in the cmake options, eg:
   -DCMAKE_INSTALL_PREFIX=/home/user/ringinstall
4. now compile libRingClient and do 'make install', everything will be installed
   in the dir specified by the prefix
4. now we just have to give the same install prefix to the cmake options of the
   client and it will find libRingClient:
   -DCMAKE_INSTALL_PREFIX=/home/user/ringinstall


Debugging
==================

For now, the build type of the client is "Debug" by default, however it is
useful to also have the debug symbols of libRingClient. To do this, specify this
when compiling libRingClient with '-DCMAKE_BUILD_TYPE=Debug' in the cmake
options.
