diff --git a/documentation/installation/debian_ubuntu.md b/documentation/installation/debian_ubuntu.md index 1eddf12d..0e857562 100644 --- a/documentation/installation/debian_ubuntu.md +++ b/documentation/installation/debian_ubuntu.md @@ -2,16 +2,30 @@ layout: page title: Spectrum 2 --- - +### Using spectrum repository We have APT repositories for Debian and Ubuntu that make it very easy to install Spectrum 2. -To use the repositories, just add the following lines to @/etc/apt/sources.list@: +To use the repositories, just add the following lines to `/etc/apt/sources.list`: deb http://repo.spectrum.im $dist main where $dist is either lucid, oneiric, precise, quantal, sid, squeeze, wheezy. If you are unsure, you can usually find your distribution in the file /etc/lsb-release. We also have a source repository at the same location if you want to build the package yourself. apt-get update + +### Building packages for different distributions/architectures +At now we do not have resources to support all different debian-based distributions and/or architectures, but you always can create packages for desired distribution yourself. +All required files for building Spectrum debian packages are present in the `packaging/debian` directory of spectrum Git repository. Most of required dependencies should be in the main Debian/Ubuntu repositories, except: + +1. Swiften - the old Swiften library used by Spectrum is present in stable [Debian](https://packages.debian.org/jessie/libswiften-dev) and [Ubuntu LTS](http://packages.ubuntu.com/trusty/libswiften-dev) but may be missing in unstable/rolling Debian/Ubuntu trees. However, you can use their own [Debian/Ubuntu repository](https://github.com/hanzz/spectrum2/blob/master/.travis.yml#L10) or create packages yourself using the same method described here for Spectrum :) +2. Communi - this library is unavailable in Debian/Ubuntu, but we provide a special [repository](https://github.com/vitalyster/libcommuni-gbp) from which you can build libcommuni + +#### Packaging for your current distribution +[TBD] +#### Creating package for different debian-based distro +We will show how to build Spectrum for the popular [Raspberry Pi](https://www.raspberrypi.org/) (or any similar) ARM-based machine with Debian-based distribution installed on it + +[TBD] ### Install spectrum2 diff --git a/documentation/installation/windows.md b/documentation/installation/windows.md new file mode 100644 index 00000000..cbcd990c --- /dev/null +++ b/documentation/installation/windows.md @@ -0,0 +1,61 @@ +Prerequisites +============= + +1. Microsoft Visual C++ 2010 Express or higher edition (http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express) +2. Git for Windows (http://code.google.com/p/msysgit/downloads/list) +3. CMake 2.8 or newer (http://www.cmake.org/cmake/resources/software.html) +4. Python 2.x for Swiften build scripts (scons) (http://www.python.org) + +Libraries +========= +3. Swiften library (http://swift.im/git/swift) +4. Boost 1.48 or newer (http://sourceforge.net/projects/boost/files/boost/1.49.0/) +5. Google ProtoBuf library (http://code.google.com/p/protobuf/downloads/list) + + +Environment +=========== + +To create spectrum build environment do: + +0. Create directory where we'll install all dependencies, e.g. C:\env-msvc-x64. +Create C:\env-msvc-x64\bin and add it to %PATH%. +Assuming you have git, python and cmake in %PATH%, +launch "Visual Studio 2010 command prompt" or +"Visual Studio 2010(x64) command prompt", depends on your target (Windows x86 or Windows x86_64). +1. unpack and build boost libraries: + + bootstrap.bat + b2.exe --without-mpi --without-python + b2.exe --without-mpi --without-python install --prefix=C:\env-msvc-x64 release + +2. clone swift repository and build it. Don't forget to point it to our env directory: + + git clone git://swift.im/swift + cd swift + echo boost_includedir="c:/env-msvc-x64/include/boost-1_49" > config.py + echo boost_libdir="c:/env-msvc-x64/lib" >> config.py + scons.bat debug=no SWIFTEN_INSTALLDIR=C:\env-msvc-x64 force_configure=1 + scons.bat debug=no SWIFTEN_INSTALLDIR=C:\env-msvc-x64 C:\env-msvc-x64 + +3. unpack and compile protobuf as described in its documentation. + +Run extract_includes.bat in vsprojects/ directory and move resulting vsprojects/include/google/ directory to our C:\env-msvc-x64\include + +Move protoc.exe to C:\env-msvc-x64\bin\ and libprotobuf.lib to C:\env-msvc-x64\lib + +4. Install gtkmm + +Download installer from https://live.gnome.org/gtkmm/MSWindows and install gtkmm into C:\env-msvc-x64\ + +5. Install libpurple headers + +Download http://www.pidgin.im/download/source/ , extract it and copy libpurple directory in C:\env-msvc-x64\include + +6. You're ready! :) Clone libtransport into C:\env-msvc-x64\libtransport (You *must* clone it into this directory, because libtransport will try to find the dependencies in ../lib and ../include) + +Compile it as: + + set CMAKE_INCLUDE_PATH=C:\env-msvc-x64\include + cmake . -G "NMake Makefiles" -DBOOST_INCLUDEDIR=../include/boost-1_49 -DBOOST_LIBRARYDIR=../lib -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=C:\env-msvc-x64 -DGIT_EXECUTABLE="c:\Program Files (x86)\git\bin\git.exe" + nmake