Gazelle Article One: Server Config / Gazelle Install

September 24, 2009 by MFSL

Ed. Note: A good friend of ours is in the process of setting up a new Gazelle music tracker, and generously offered his expertise. What’s different about this series of tutorials, is that there will actually be an operational tracker at the end of it. So if you ever wanted to witness the inner workings on how to install, setup & configure a Gazelle tracker from scratch, then this series is for you. Let the documentation begin!

Hello loyal readers. I’m gonna go through the entire process of creating a tracker using gazelle and teach you as I do it. What’s special is that i will be releasing this site to the public. Articles will be general at first but you will see it slowly shape into a niche vinyl music tracker over the course of the series. A beta will be opening soon and I want to emphasize that articles are coming out as I code. I almost forgot to introduce myself, I’m MFSL. Also, I’m not a coding pro. I will be learning new things as I code just like you :). Now to get started. This article will be all about Configuring your Server and Installing Gazelle.

What you need for this step:

  • A Server Running Debian
  • SSH Client such as PuTTy

Server Config

-First to install the dependencies. Load up your SSH client and get crackin (I’m using PuTTy)

apt-get install build-essential apache2 php5 libapache2-mod-php5 mysql-server libmysqlclient15-dev php5-mysql memcached php5-memcache php5-gd php5-mcrypt subversion automake

apt-get install cmake g++ libboost-date-time-dev libboost-dev libboost-filesystem-dev libboost-program-options-dev libboost-regex-dev libboost-serialization-dev make zlib1g-dev

-Changing /var/www/ to /site/

cd /

mkdir site

nano /etc/apache2/sites-enabled/000-default

cd / brings the server to root directory, mkdir site creates a directory called site and the nano command opens up the apache file for editing

**Change this file to**

# Standard http port
NameVirtualHost *:80

<VirtualHost *:80>
ServerAdmin yourmail@email.com
ServerName yoursite.tld

DocumentRoot /site/

<Directory “/site/captcha”>
Order deny,allow
Deny from all
</Directory>

<Directory “/site/classes”>
Order deny,allow
Deny from all
</Directory>

<Directory “/site/sections”>
Order deny,allow
Deny from all
</Directory>

<Directory “/site/torrents”>
Order deny,allow
Deny from all
</Directory>

<Files ~ “^\.ht|\.ini|\.inc|\.sql”>
Order deny,allow
Deny from all
</Files>

</VirtualHost>

and to make the changes take effect:

apache2 -k restart

Getting Gazelle

svn co http://svn.what.cd:81/repos/project_gazelle /site/

svn tells the server that we are connecting to a svn deposit, co means copy, and it copies all the files from the first thing after it to the second. If you can’t get the svn because its currently down then message me and I’ll send you it.

MYSQL Config

mysql -u root
use mysql
update user set password=PASSWORD(”New_Password”) where User=’root’;
flush privileges;
quit;

Gazelle Config

goto http://serverip/install/index.php and fill out all the fields. I’m not going to go through all this info now because it’s mostly just user names and passwords.

Installing XBTT

cd /site/
tar zxfv xbtt.tar.gz
cd xbtt/build/xbtt
./autogen.sh
make
cd src

nano xbt_tracker.conf

edit the “mysql_host =” and “mysql_user =” fields to your mysql host and user. Pretty simple, really.

More MYSQL Config

mysql -u root -pNEWPASSWORD
use databasewhatever_you_defined_in_install_php
select * from xbt_config;

update xbt_config set value = ‘Your_Servers_IP’ where value = ‘70.47.114.223′;
update xbt_config set value = ‘Any_Port_You_Want’ where value = ‘34000′;

Final Command

./xbt_tracker xbt_tracker.conf

to run XBTT

Final Thoughts

pretty easy for the first day but it’s just the beginning. If anyone needs clarity I will reply to posts in comments, rude comments will be ignored. I hope to get new articles up every 1 to 2 weeks and pose polls to you readers about what direction YOU want this site to head. Thank for reading and I hope to be back soon.

-MFSL