README.md 2.08 KB

Get Started

Requirements

We will need to install python3.6 with sqlite3 support. This can be done using the system package management, downloaded from http://www.python.org, or compiled from sources.

  • Installing from the system package management:
    • OSX: port install python36
    • FreeBSD: pkg install python36 py36-sqlite3
    • Linux: apt-get install ???
  • Installing from sources:
    • Download from http://www.python.org
    • unxz Python-3.6.tar.xz
    • tar xvf Python-3.6.tar
    • cd Python-3.6
    • ./configure --prefix=$HOME/.local/bin
    • make && make install

Next install pip (if not yet installed):

python36 -m ensurepip --user

This will install pip in your account under ~/.local/bin. In the end you should be able to run pip3 --version and python3 -c "import sqlite3" without errors (sometimes pip3 is pip, pip3.6 or pip-3.6).

Install additional python packages locally on the user area:

pip install --user tornado sqlalchemy pyyaml pygments markdown bcrypt networkx

These are usually installed under

  • OSX: ~/Library/python/3.6/lib/python/site-packages/
  • Linux/FreeBSD: ~/.local/lib/python3.6/site-packages/

Note: If you want to always install python modules on the user account, edit the pip configuration file ~/.config/pip/pip.conf (FreeBSD, Linux) or Library/Application Support/pip/pip.conf (OSX) and add the lines

[global]
user = yes

Installation

Replace USER by your bitbucket username:

cd path/to/some/directory
git clone https://USER@bitbucket.org/USER/aprendizations.git

A directory aprendizations will be created with the software:

cd aprendizations

Configuration

First we need to create a database:

./initdb.py                 # initialize with a single user `0`  and empty password
./initdb.py --help          # for the available options

We also need certificates for https. Generate selfsigned certificates using openssl:

cd certs
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes
cd ..

Run a demonstration:

./serve.py