From Manqod

Jump to: navigation, search

This document will cover install instructions for the newest versions of manqod, manqod-server and manqod-server-console.


Manqod Server

Tested on gentoo with ruby1.8 and ruby1.9, but should work on other systems.

Install dependencies

mysql, memcached, ruby, ruby memcached binding, ruby mysql binding


Ruby 1.8

For ruby-1.8.7_p334

Add the following to /etc/make.conf


Ruby 1.9

For ruby-1.9.2

Add the following to /etc/make.conf


And to /etc/portage/profile/use.mask


Other dependencies

Emerge the packages

USE="sasl threads" emerge memcached ruby rubygems mysql 
gem install -r mysql memcached rufus-scheduler

Set up dependencies


Add it to the default startup level

rc-update add mysql default


Edit /etc/conf.d/memcached


Add it to the default startup level

rc-update add memcached default

The Gentoo init script

The script and it's config file are located in the manqod-server/doc/gentoo/ directory.
I'ts alright if you just symlink them to their place on the system.
Assuming you extracted the manqod-server to /opt/

ln -s /opt/manqod-server/doc/gentoo/etc/init.d/manqod-server /etc/init.d/
ln -s /opt/manqod-server/doc/gentoo/etc/conf.d/manqod-server /etc/conf.d/
rc-update add manqod-server default

If you don't edit the conf file it'll use the default settings.

Add the script to the default runlevel.

rc-update add manqod-server default

Set up manqod-server

I suggest you start up manqod-server as root, by hand on your server, for the first time:

cd /opt/manqod-server/
./bin/manqod-server -l -dINFO

Manqod Server Console

Install manqod-server-console from the rubygems repository.

gem install manqod-server-console

Edit it's server.conf


Start up manqod-server-console and add the connections for the manqod-server:


Don't forget to create three connections: manqod, manqod-yourproject, yourproject, set up mysql connections(user/pass/database) for them.

Populate the databases with the prepared data, which was brought by the manqod-server gem:

  • manqod's database with the 'populate manqod' command from manqod-server-console
  • manqod-yourproject's database with the 'populate structure' command from manqod-server-console

You might want to take a look at the tutorial

If everything went as expected you can start the server by the init script.

/etc/init.d/manqod-server start

Manqod client



Install ruby and rubygems, then

gem install -r memcached gtksourceview2 manqod


USE="sasl" emerge -van memcached ruby rubygems gtk2
gem install -r memcached gtksourceview2 manqod


apt-get install ruby1.8-dev ruby-gnome2 libgtksourceview-dev rubygems libsasl2-dev libmemcache-dev patch 
sudo gem install memcached gtksourceview2 manqod --no-rdoc --no-ri

You might want to decrease the ubuntuish ugliness by enabling icons in menus like this:

gconftool --set "/desktop/gnome/interface/menus_have_icons" --type Boolean true
gconftool --set "/desktop/gnome/interface/buttons_have_icons" --type Boolean true



This is not really supported, use it only if you are brave enough. :)
On Windows dalli is used as the ruby lib for memceched, note, it's said to be up to 60x slower then the memcached gem for linux.
It'll look like this

Ruby 1.8

gem install --no-rdoc --no-ri cairo gtk2 dalli manqod
  • Run manqod client:
manqod -sdruby://your-server-ip:5549 -bdruby://your-client-ip:0 -a

Ruby 1.9

  • Download and install Ruby 1.9.2-p180 from
    • Check the 'Add Ruby executables to your PATH'
  • Open up console(Start/Run cmd) and type
gem install --no-rdoc --no-ri cairo gtk2 dalli manqod
  • Run manqod client:
manqod -sdruby://your-server-ip:5549 -bdruby://your-client-ip:0 -a


Supposed you installed manqod from gem, run like this:

manqod -sdruby://yourserver:5549 -bdruby:://yourip:0 -a

You might want to take a look at the tutorial

Errors you may encounter

  • installing the gtk2 gems fail with
ERROR:  Error installing gtk2:
	ERROR: Failed to build gem native extension.

/usr/bin/ruby19 extconf.rb
checking for GCC... yes
checking for rb_define_alloc_func() in ruby.h... yes
checking for rb_block_proc() in ruby.h... yes
checking for new allocation framework... yes
checking for attribute assignment... no
checking for rb_errinfo()... yes
checking for cairo... yes
checking for rb_cairo.h... yes
checking for Win32 OS... no
checking for gthread-2.0... yes
checking for gtk+-2.0... yes
checking for st.h... yes
checking for ruby/st.h... yes
checking for target... x11
checking for gtk_plug_get_type() in gtk/gtk.h... yes
checking for gtk_socket_get_type() in gtk/gtk.h... yes
checking for pango_render_part_get_type() in gtk/gtk.h... yes
checking for gtk/gtkfilesystem.h... no
checking for X11/Xlib.h... yes
checking for main() in -lX11... yes
checking for XReadBitmapFileData() in X11/Xlib.h... yes
checking for XGetErrorText() in X11/Xlib.h... yes
checking for gtk+-unix-print-2.0... yes
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
extconf.rb:121:in `block (2 levels) in run': invalid byte sequence in US-ASCII (ArgumentError)
	from /usr/lib64/ruby/1.9.1/pathname.rb:771:in `foreach'
	from /usr/lib64/ruby/1.9.1/pathname.rb:771:in `each_line'
	from extconf.rb:120:in `block in run'
	from extconf.rb:119:in `each'
	from extconf.rb:119:in `run'
	from extconf.rb:197:in `block in <main>'
	from /usr/lib64/ruby/1.9.1/pathname.rb:829:in `open'
	from /usr/lib64/ruby/1.9.1/pathname.rb:829:in `open'
	from extconf.rb:191:in `<main>'
creating ruby-gtk2.pc

run this before the gem commands:

 export LC_ALL=en_US.UTF-8

or run the gem command like this:

 LC_ALL=en_US.UTF-8  gem update


 LC_ALL=en_US.UTF-8  gem install ...


I'll answer to emails

Personal tools