106 lines
6.3 KiB
Plaintext
106 lines
6.3 KiB
Plaintext
This is a typical ubuntu installation.
|
|
|
|
root@vps189189:~# sudo apt-get install gcc g++ cpp
|
|
root@vps189189:~# sudo apt-get install flex
|
|
root@vps189189:~# sudo apt-get install byacc
|
|
root@vps189189:~# sudo apt-get install bison
|
|
root@vps189189:~# sudo apt-get install make automake
|
|
root@vps189189:~# sudo apt-get install openssl libssl-dev
|
|
root@vps189189:~# sudo apt-get install git
|
|
root@vps189189:~# sudo apt-get install libpqxx-4.0
|
|
root@vps189189:~# sudo apt-get install libreadline6-dev
|
|
root@vps189189:~# sudo apt-get install zlib1g-dev
|
|
root@vps189189:~# sudo apt-get install vim
|
|
|
|
Add a non-root user for postgresql, eg. 'gnuworld'
|
|
root@vps189189:~# adduser gnuworld
|
|
|
|
Installing PostgreSQL database:
|
|
root@vps189189:~# wget http://ftp.postgresql.org/pub/source/v9.3.4/postgresql-9.3.4.tar.gz
|
|
root@vps189189:~# tar zxvf postgresql-9.3.4.tar.gz
|
|
root@vps189189:~# cd postgresql-9.3.4/
|
|
root@vps189189:~/postgresql-9.3.4# ./configure [--without-readline --without-zlib]
|
|
root@vps189189:~/postgresql-9.3.4# make && sudo make install
|
|
root@vps189189:~/postgresql-9.3.4# cd ~
|
|
You can use here nano if you want, I use vim editor
|
|
root@vps189189:~# vim /etc/ld.so.conf
|
|
Press 'a' to enter in edit mode, and insert the line:
|
|
/usr/local/pgsql/lib
|
|
Press ESC
|
|
write: ':wq' or hold down Shift and press two times 'z' (Shift + ZZ)
|
|
|
|
Now let's create the database directories:
|
|
root@vps189189:~# [sudo] mkdir /usr/local/pgsql/data
|
|
root@vps189189:~# chown gnuworld /usr/local/pgsql/data
|
|
root@vps189189:~# chgrp gnuworld /usr/local/pgsql/data
|
|
Starting the database itself:
|
|
root@vps189189:~# su gnuworld
|
|
gnuworld@vps189189:/root$ cd ~
|
|
gnuworld@vps189189:~$ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
|
|
Success. You can now start the database server using:
|
|
gnuworld@vps189189:~$ /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data &
|
|
|
|
This line is useful to put in crontab, so on server reboot you get postgres running
|
|
gnuworld@vps189189:~$ crontab -e
|
|
At the end insert:
|
|
@reboot /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data
|
|
|
|
After this I usually open a new terminal window, to not to be bothered with database messages.
|
|
|
|
Now install gnuworld-enhanced:
|
|
gnuworld@vps189189:~$ git clone https://github.com/Seven-7/gnuworld-enhanced.git
|
|
gnuworld@vps189189:~$ cd gnuworld-enhanced/
|
|
gnuworld@vps189189:~/gnuworld-enhanced$ ./configure --with-extra-includes=/usr/local/include --with-extra-includes=/usr/include/postgresql/ --with-pgsql-home=/usr/local/pgsql/ --enable-modules=cservice,ccontrol,dronescan,openchanfix[,gnutest,nickserv,scanner,snoop,stats]
|
|
Please note here that gnutest,nickserv,scanner,snoop,stats modules are experimental, unfinished, not useful, probably you should ommit modules!
|
|
gnuworld@vps189189:~/gnuworld-enhanced$ make; make install
|
|
|
|
Now create the actual databases:
|
|
gnuworld@vps189189:~/gnuworld-enhanced$ cd doc
|
|
Note!: You can try to shortcat all of these with running the
|
|
~/gnuworld-enhanced/doc/do-db.sh
|
|
script! You must be in the ~/gnuworld-enhanced/doc directory!
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ ./do-db.sh
|
|
Or manually:
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/createdb --template=template0 -E=SQL_ASCII cservice
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql cservice < cservice.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql cservice < cservice.config.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql cservice < languages.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql cservice < language_table.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql cservice < greeting.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql cservice < cservice.help.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql cservice < cservice.web.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql cservice < cservice.addme.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/createdb --template=template0 -E=SQL_ASCII ccontrol
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql ccontrol < ccontrol.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql ccontrol < ccontrol.help.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql ccontrol < ccontrol.addme.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql ccontrol < ccontrol.commands.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/createdb --template=template0 -E=SQL_ASCII dronescan
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/psql dronescan < dronescan.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ /usr/local/pgsql/bin/createdb --template=template0 -E=SQL_ASCII chanfix
|
|
gnuworld@vps189189:~/gnuworld-enhanced/doc$ cd ../mod.openchanfix/doc/
|
|
gnuworld@vps189189:~/gnuworld-enhanced/mod.openchanfix/doc$ /usr/local/pgsql/bin/psql chanfix < chanfix.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/mod.openchanfix/doc$ /usr/local/pgsql/bin/psql chanfix < chanfix.languages.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/mod.openchanfix/doc$ /usr/local/pgsql/bin/psql chanfix < chanfix.language.english.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/mod.openchanfix/doc$ /usr/local/pgsql/bin/psql chanfix < chanfix.help.sql
|
|
gnuworld@vps189189:~/gnuworld-enhanced/mod.openchanfix/doc$ /usr/local/pgsql/bin/psql chanfix < chanfix.addme.sql
|
|
|
|
Go to bin directory, and create the gnuworld config files:
|
|
gnuworld@vps189189:~/gnuworld-enhanced/mod.openchanfix/doc$ cd ~/gnuworld-enhanced/bin/
|
|
gnuworld@vps189189:~/gnuworld-enhanced/bin$ cp GNUWorld.example.conf GNUWorld.conf
|
|
gnuworld@vps189189:~/gnuworld-enhanced/bin$ cp cservice.example.conf cservice.conf
|
|
gnuworld@vps189189:~/gnuworld-enhanced/bin$ cp ccontrol.example.conf ccontrol.conf
|
|
gnuworld@vps189189:~/gnuworld-enhanced/bin$ cp dronescan.example.conf dronescan.conf
|
|
gnuworld@vps189189:~/gnuworld-enhanced/bin$ cp openchanfix.example.conf openchanfix.conf
|
|
Edit all these files.
|
|
|
|
In GNUWorld.conf don't forget to uncomment the modules you configured with
|
|
|
|
# To use a certain module, uncomment it below.
|
|
module = libcservice.la cservice.conf
|
|
module = libccontrol.la ccontrol.conf
|
|
module = libchanfix.la openchanfix.conf
|
|
module = libdronescan.la dronescan.conf
|
|
|
|
And finally we can start gnuworld:
|
|
gnuworld@vps189189:~/gnuworld-enhanced/bin$ ./gnuworld & |