TeamCity 8 on CentOS 6.4 from scratch

In this post I’ll describe whole TeamCity installation process on a fresh CentOS (on the moment I’m writing it’s 6.4) for your private project or startup.
First, proceed to the CentOS downloads page and download CentOS distro through .iso, .torrent or whatever-you-like and start the installation process. If you’re familiar with any  linux distro installation, it won’t take you much time to complete the installation. I’m using the minimal configuration without any Desktop Environment and with minimum core- and other system utils. Nonetheless, consider installing iptables, elinks and java (openjdk).
After the installation is over, login, add a user for yourself with adduser and let’s start with TeamCity (maybe you’ll also consider adding yourself to the sudoers file).
First, create /opt/jetbrains/ directory and download latest TeamCity using wget.
# mkdir /opt/jetbrains
# cd /opt/jetbrains
# wget http://download.jetbrains.com/teamcity/TeamCity-8.0.5.tar.gz
# tar -xpzf TeamCity-8.0.5.tar.gz

Now lets create a system user (e.g. no home directory) for TeamCity to resolve security issues correctly:

# adduser -r teamcity
# passwd teamcity
# chown -R teamcity:teamcity TeamCity
We’ll use PostgreSQL for the internal database for TeamCity. So let’s install postgresql packages (8.4 for CentOS 6.4). For details of the PostgreSQL installation please refer to official webpage.
# yum install postgresql
# service postgresql initdb
# chkconfig postgresql on
Also edit the /var/lib/pgsql/data/pg_hba.conf file to allow authorization from localhost. Go to the end and replace ident to trust for localhost in the configuration for hosts. Now lets create another user for the future TeamCity database and create a database for that user.
# sudo -u postgres psql postgres
password postgres
# sudo -u postgres createuser -D -A -P teamcity_user
# sudo -u postgres createdb -O teamcity_user teamcity_db
(D = Cannot create databases, A = Cannot add users, P = Force password prompt)

MediaWiki installation on a linux guest in the VirtualBox: how-to, tips & tricks

I’ve spend half of a day trying to get MediaWiki working on a VirtualBox for the internal project in the internal network. Looks like it’s done now and I want to share tips to help someone to spend less time in the future.

I’ve been installing and configuring MediaWiki 1.21 on the OpenSUSE 12.3, but all tips are valuable for any linux distro.

(more…)

Solving mouse delays and lags in linux

I’ve been experiencing strange mouse delays and lags some time ago and now I’ve become tired of it. I’m using OpenSUSE with 3.7.10 kernel and first thing I tried was upgrading the kernel (to 3.12) which was quite useless. Googling related to my distro also wasn’t helpful.

The trick was in laptop-mode-tools which I’ve installed earlier to make my laptop battery life longer. There is an usb autosuspend options which just suspended my usb wireless mouse. So setting

AUTOSUSPEND_USBTYPE_BLACKLIST="usbhid"

in the

/etc/laptop-mode/conf.d/usb-autosuspend.conf

and running

/etc/init.d/laptop-mode restart

was enough.

Solve problem from string

I with my friends joked that someday .NET framework would be so powerful, that it would be possible to write applications using magic method SolveProblemFromString(string problemDescription) like this:

public static void Main()
{
    SolveProblemFromString("I need a new sync app for my iPod player!");
}

So the programmers would be deprecated.