1

Topic: [Tutorial] Teeworlds server - Synology DS

Teeworlds on a Synology DS

This is a tutorial on how to get Teeworlds server running on your Synology DS.

I take NO responsibility, if your NAS will take any damage or in any other way act weird after this tutorial! - Nothing has happened to my DS though.

The following procedure was done on a Synology DS 212+ - I can't guarantee that it will work on yours, since the DS's are produced with different CPU's, RAM, Size and so on.


Allright - Let's get going!

Step 1. Install Python and Perl
Open your browser and type in the ip address of your DS in the addressbar. Log in to your DS.

Open up your Package Center and install Python and Perl - This should be pretty easy!


Step 2. Fix the Python and Perl installation
Open up your Terminal (If linux/mac os) or Putty (If windows) and connect to your DS as root

Python fix
1. backup the pthread libraries found in /opt/arm-none-linux-gnueabi/lib/
mkdir /opt/arm-none-linux-gnueabi/lib_disabled
mv /opt/arm-none-linux-gnueabi/lib/libpthread* /opt/arm-none-linux-gnueabi/lib_disabled

2. Copy the pthread libraries found in /opt/lib
cp /lib/libpthread.so.0 /opt/arm-none-linux-gnueabi/lib/
cd /opt/arm-none-linux-gnueabi/lib/

3. Make symlinks
ln -s libpthread.so.0 libpthread.so
ln -s libpthread.so.0 libpthread-2.5.so

Perl fix
1. Make symlinks
ln -s /opt/bin/gcc /opt/bin/arm-none-linux-gnueabi-gcc
ln -sf /opt/bin/ld /opt/bin/arm-none-linux-gnueabi-ld


Step 3. Install IPKG / Bootstrap
This step is only necessary if you haven't Bootstraped your DS yet!
Follow the steps from 1 - 15 from this link:
http://forum.synology.com/wiki/index.ph … stall_ipkg


Step 4. Install the latest GCC and wget-ssl with IPKG

Install GCC
ipkg install gcc

Install wget-ssl
ipkg download wget-ssl
ipkg remove wget
ipkg install wget-ssl_1.12-2_arm.ipk


Step 5. Create a new shared folder
Go to your DS's web UI again.

1. Open your Control Panel
2. Click Shared Folder
3. Click on the Create button
4. Give your folder a name (In my case i called it "Servere" (Danish for servers))
5. Give your folder the appropriate permissions
6. Close yur Control Panel and go back to your Terminal/Putty
7. Type in "cd /volume1/SHAREDFOLDERNAME/"


Step 6. Download/Unzip BAM and Teeworlds

Install wget-ssl
wget --no-check-certificate http://teeworlds.com/files/bam-0.4.0.zip
unzip bam-0.4.0.zip
rm bam-0.4.0.zip

Download/Unzip Teeworlds
wget --no-check certificate http://www.teeworlds.com/files/teeworld … x86.tar.gz
tar -zxf teeworlds-0.6.2-linux_x86.tar.gz
rm teeworlds-0.6.2-linux_x86.tar.gz


Step 7. Compiling BAM and Teeworlds

Compile BAM
cd /bam-0.4.0/
./make_unix.sh
cd ..

Compile Teeworlds
cd teeworlds-0.6.2-linux_x86
../bam/bam server_release


Step 8. Run the server

Just type "./teeworlds_srv



Now you can costumize the settings for your server by adding your CFG files.
And since your created the sahred folder, you can easily access that folder through your network.

I hope everything makes sence. If you have any questions, feel free to ask, and i shall do what i can to help.
And if you have any inputs, please feel free to post them, and i will change this post.

2

Re: [Tutorial] Teeworlds server - Synology DS

thank you very much

I will test this when I find some time.

Antoine de Saint Exupéry: It seems that perfection is reached not when there is nothing left to add, but when there is nothing left to take away.
Besides -  I am the gfx guy!

3 (edited by Shahan 2013-09-09 21:06:24)

Re: [Tutorial] Teeworlds server - Synology DS

Great one! I don't have NAS server, but I'd like to test your tuto when I get it smile

By the way, is it possible to run server binary, which was built on ubuntu/debian?

And why do we need "fix Perl installation"? Teeworlds uses Perl?

4 (edited by Jogib 2013-09-11 12:16:37)

Re: [Tutorial] Teeworlds server - Synology DS

Shahan wrote:

By the way, is it possible to run server binary, which was built on ubuntu/debian?
And why do we need "fix Perl installation"? Teeworlds uses Perl?

I can't answer you on the first question - Haven't tried.

And couldn't compile BAM until i have fixed the directory path for perl.
And the same goes for Teeworlds - Couldn't compile that until i have fixed the directory path for Python.

And a lot of forums around, also states that synology's own python and perl have som flaws.. That's why it needs to be fixed.