1. Boris Nagaev
  2. facts


facts, random fact viewer
Copyright (C) 2010 Boris Nagaev

facts is licensed under the GNU GPL Version 2.
Other versions of the GPL do not apply.


 * Wt 3.1.11+: http://www.webtoolkit.eu/wt/doc/reference/html/InstallationUnix.html
   at least libwt, libwthttp, libwtsqlite3
 * boost: signals, thread, random, system, regex
 * spawn-fcgi (for fcgi mode)

 * ccache
 * g++ 4.5+ (lto is used in release version)
 * gnu make
 * qmake
 * inkscape (Font Steve (package ttf-sjfonts) is used for logo and favicon)
 * convert by ImageMagick
 * upx (is used to compress release version)

Build and run:
 * run `make` to build the executable
 * run `make run` to run the server
 * run `make install` to install the application system-wide
Variables of Makefile:
 * BUILD (=debug), build type: debug | release
 * MODE (=http), wt connector: http | fcgi
 * PORT (=5711), ADDRESS (= port and address of http or fcgi server
 * SOCKET (=/var/run/facts/facts.socket for install version,
            $(BUILD)/facts-$(MODE).socket for local version)
   Only for fcgi mode. Connection through unix socket is prefered over ADDRESS:PORT, if both given.
Installation-only variables:
 * RUN_USER (=www-data), RUN_GROUP (=www-data), owner of installed non-executable files
 * INTEGRATE_INTO, comma-separated list of services to integrate into (possible: nginx,monit)
 * URL_PREFIX, url-prefix to use while integrating into web-servers
 * HOST_NAME (=facts), hostname to use while integrating into web-servers
 * NGINX_CONF = /etc/nginx/sites-available/facts
 * MONIT_CONF = /etc/monit/conf.d/facts

Following standard variables affect installation paths:
 * prefix = /usr/local
 * exec_prefix = $(prefix)
 * datarootdir = $(prefix)/share
 * datadir = $(datarootdir)
 * sysconfdir = $(prefix)/etc
 * localstatedir = $(prefix)/var
 * bindir = $(exec_prefix)/bin
To use ubuntu standard paths use `make install-ubuntu` instead of `make install`.