Version at: 13/02/2015, 06:34

#How to Prepare a Development Environment for Tatoeba Using a Pre-made Virtual Machine

## Installing the VM
* Grab the vm file:

    [Mirror 1](http://www.aloneonmars.info/public/lool0/Tatovm/) |
    [Torrent(mirror 1)](http://www.aloneonmars.info/public/lool0/Tatovm/Tatovm.torrent) |
    [Magnet link](https://dl.dropboxusercontent.com/u/3186185/magnet.html)

    [Mirror 2](https://mirrors.bouah.net/pub/tatoeba/Tatovm/) |
    [Torrent(mirror2)](https://mirrors.bouah.net/pub/tatoeba/Tatovm/Tatovm.torrent)
    (https certificate sha1 fingerprint:
55:70:43:DD:4E:90:71:10:A8:B4:16:23:F6:B5:46:EF:6B:33:B1:C2)


* Untar the file:

   * On Windows: 

        * Download both the vbox and the xz file

        * Use [7zip](http://www.7-zip.org/) to extract Tatovm.vmdk file from the xz file (using the "Extract here" item from the right-click menu)

   * On Linux: use file-roller or from the terminal, type:

        xz -d Tatovm.vmdk.xz

### Using VirtualBox

* 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

### Using Qemu

* Get and install [qemu](http://en.wikibooks.org/wiki/QEMU/Installing_QEMU)

* Run the following command: (tweak the -m flag for more ram)

  qemu-system-i386 Downloads/Tatovm.vmdk -smp 4 -m 512 -enable-kvm -net nic -net user -redir tcp:8080::80 -redir tcp:4242::22 -redir tcp:8081::81

## Accessing the VM
* The default http port is **8080**, the default SSH port is **4242**, and the default webdav port is **8081**.

* On Windows, you may want to download [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) as your SSH GUI.

* To SSH into the machine, use the username **tatoeba**, password **tatoeba**, and port **4242**:

   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

* Steps such as installing packages require superuser privileges. Prefix these commands with sudo or run:

   sudo su

   Then type in the password **tatoeba** when prompted.

   After performing your operation, execute "exit" to end superuser access.

* The MySQL user is **root** and password is **tatoeba** in case you need to do operations directly on the table or import more data. Getting to a mysql shell or excuting a mysql script is as easy as:

  mysql -u root -ptatoeba tatoeba

  mysql -u root -ptatoeba tatoeba < script.sql

##Performing Additional Configuration Steps

* If you will be committing code, configure your user.name and user.email. (You can do this retroactively after your first commit, but it's better to do it beforehand.) For instance, if your username at GitHub is ghuser, and your e-mail address is address@example.com, you'll execute:

        git config --global user.name "ghuser"

        git config --global user.email address@example.com

* It's also a good idea to set your time correctly, especially if you're going to be committing code. Otherwise, the time stamps on your commits will be wrong, and it will look as if you're committing code days before or after you actually do. Try installing the ntp package. See [this page](https://wiki.debian.org/DateTime) for more information.

* You may find it useful at this point to back up your databases so that you can return them to their virgin state. Make a directory (for instance, /backup ; this may require root permission) and then execute a command such as this one:

    mysqldump -u root -ptatoeba -A > /backup/all_dbs.sql
 
## Customizing Your Installation
* There are three ways to access the codebase via your favorite editor in the comfort of your host computer:

   * 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 **8081**.

        * 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

##Logging Into Tatoeba on the VM

The users provided by default are:

    admin

    corpus_maintainer

    advanced_contributor

    contributor

    inactive

    spammer

The default password for each user is '123456'.

In addition, you can register new users.

version at: 13/02/2015, 08:07

#How to Prepare a Development Environment for Tatoeba Using a Pre-made Virtual Machine

## Installing the VM
* Grab the vm file:

    [Mirror 1](http://www.aloneonmars.info/public/lool0/Tatovm/) |
    [Torrent(mirror 1)](http://www.aloneonmars.info/public/lool0/Tatovm/Tatovm.torrent) |
    [Magnet link](https://dl.dropboxusercontent.com/u/3186185/magnet.html)

    [Mirror 2](https://mirrors.bouah.net/pub/tatoeba/Tatovm/) |
    [Torrent(mirror2)](https://mirrors.bouah.net/pub/tatoeba/Tatovm/Tatovm.torrent)
    (https certificate sha1 fingerprint: 
ED:94:35:53:59:89:28:74:91:C3:90:77:5D:D0:44:60:8C:FF:CA:D9)


* Untar the file:

   * On Windows: 

        * Download both the vbox and the xz file

        * Use [7zip](http://www.7-zip.org/) to extract Tatovm.vmdk file from the xz file (using the "Extract here" item from the right-click menu)

   * On Linux: use file-roller or from the terminal, type:

        xz -d Tatovm.vmdk.xz

### Using VirtualBox

* 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

### Using Qemu

* Get and install [qemu](http://en.wikibooks.org/wiki/QEMU/Installing_QEMU)

* Run the following command: (tweak the -m flag for more ram)

  qemu-system-i386 Downloads/Tatovm.vmdk -smp 4 -m 512 -enable-kvm -net nic -net user -redir tcp:8080::80 -redir tcp:4242::22 -redir tcp:8081::81

## Accessing the VM
* The default http port is **8080**, the default SSH port is **4242**, and the default webdav port is **8081**.

* On Windows, you may want to download [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) as your SSH GUI.

* To SSH into the machine, use the username **tatoeba**, password **tatoeba**, and port **4242**:

   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

* Steps such as installing packages require superuser privileges. Prefix these commands with sudo or run:

   sudo su

   Then type in the password **tatoeba** when prompted.

   After performing your operation, execute "exit" to end superuser access.

* The MySQL user is **root** and password is **tatoeba** in case you need to do operations directly on the table or import more data. Getting to a mysql shell or excuting a mysql script is as easy as:

  mysql -u root -ptatoeba tatoeba

  mysql -u root -ptatoeba tatoeba < script.sql

##Performing Additional Configuration Steps

* If you will be committing code, configure your user.name and user.email. (You can do this retroactively after your first commit, but it's better to do it beforehand.) For instance, if your username at GitHub is ghuser, and your e-mail address is address@example.com, you'll execute:

        git config --global user.name "ghuser"

        git config --global user.email address@example.com

* It's also a good idea to set your time correctly, especially if you're going to be committing code. Otherwise, the time stamps on your commits will be wrong, and it will look as if you're committing code days before or after you actually do. Try installing the ntp package. See [this page](https://wiki.debian.org/DateTime) for more information.

* You may find it useful at this point to back up your databases so that you can return them to their virgin state. Make a directory (for instance, /backup ; this may require root permission) and then execute a command such as this one:

    mysqldump -u root -ptatoeba -A > /backup/all_dbs.sql
 
## Customizing Your Installation
* There are three ways to access the codebase via your favorite editor in the comfort of your host computer:

   * 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 **8081**.

        * 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

##Logging Into Tatoeba on the VM

The users provided by default are:

    admin

    corpus_maintainer

    advanced_contributor

    contributor

    inactive

    spammer

The default password for each user is '123456'.

In addition, you can register new users.

Note

The lines in green are the lines that have been added in the new version. The lines in red are those that have been removed.