Notice
This page show a previous version of the articleHow to Prepare a Development Environment for Tatoeba Using a Pre-made Virtual Machine
Grab the vm file http://mirrors.bouah.net/pub/tatoeba/Tatovm/
Untar the file:
On Windows: use 7zip [http://www.7-zip.org/]
On Linux: use file-roller or from the terminal, type:
tar -xvf vmfile
Get and install VirtualBox [https://www.virtualbox.org/wiki/Downloads]
Load the VM files in VirtualBox:
From the GUI: Machine -> Add then browse to the location of the .vbox file
From the command line: VBoxManage registervm /path/to/vm.vbox
The default http port is 8080 and the default SSH port is 4242.
To SSH into the machine, use the username tatoeba and password tatoeba:
ssh -p 4242 tatoeba@127.0.0.1
Now you can see the website running in your browser by pointing it to the following address:
127.0.0.1:8080
The mysql user is root and password is tatoeba in case you need to do operations directly on the table or import more data.
To hack the codebase in your favorite editor in the comfort of your host computer, there are 3 ways:
Mount a drive over SSH:
On Windows: download NetDrive [www.netdrive.net] and use the aforementioned credentials and port
On Linux: install SSHFS and then mount it using:
sshfs tatoeba@127.0.0.1:4242 /path/to/mountpoint
Mount a drive over WebDAV:
On Windows: use NetDrive. The user and password are tatoeba, and the port is 8080.
On Linux: use your favorite file manager with WebDAV support, or install cadaver and connect using the above credentials.
Mount a shared file (slow and not recommended):
Set up Guest additions [https://help.ubuntu.com/community/VirtualBox/GuestAdditions]
In the GUI select Devices -> Shared Folders -> Add
Browse to the folder you want to share from your host and select it
Select the Make permanent option
Now mount the shared file on the guest system:
mount -t vboxfs /media/sharefoldername /path/to/mountpoint
You can also install a graphical environment (GNOME or any other development environment) to work directly from the VM:
apt-get install task-gnome-desktop
Before coding anything, make sure your codebase is up to date by executing the following commands:
cd ~/tatoeba-www
svn update
After you have changed the code enough and want to update the main repository, do the following:
Make sure your config files aren't being committed:
svn ignore config/*
Double-check your changes:
svn diff
Make sure you're still up to date, then commit your changes:
svn update
svn commit