# Archweb README

To get a pretty version of this document, run

    $ markdown README > README.html

# License

See LICENSE file.

# Authors

See AUTHORS file.

# Dependencies

- python
- python-virtualenv

# Python dependencies

More detail in `requirements.txt` and `requirements_prod.txt`; it is best to
use virtualenv and pip to handle these. But if you insist on (Arch Linux)
packages, you will probably want the following:

- mysql-python or python-pysqlite
- django
- python-markdown
- python-south
- python-memcached

# Testing Installation

1. Run `virtualenv`.

        $ cd /path/to/archweb && virtualenv ../archweb-env

2. Source the virtualenv.

        $ . ../archweb-env/bin/activate

2. Install dependencies through `pip`.

        (archweb-env) $ pip install -r requirements.txt

3. Copy `local_settings.py.example` to `local_settings.py` and modify.
   Make sure to uncomment the appropriate db section (either sqlite or mysql).

4. Sync the database to create it.

        (archweb-env) $ ./manage.py syncdb

5. Migrate changes.

        (archweb-env) $ ./manage.py migrate

6. Load the fixtures to prepopulate some data.

        (archweb-env) $ ./manage.py loaddata main/fixtures/arches.json
        (archweb-env) $ ./manage.py loaddata main/fixtures/repos.json
        (archweb-env) $ ./manage.py loaddata main/fixtures/groups.json
        (archweb-env) $ ./manage.py loaddata mirrors/fixtures/mirrorprotocols.json
    
7. Use the following commands to start a service instance

        (archweb-env) $ ./manage.py runserver

8. To optionally populate the database with real data:

        (archweb-env) $ wget ftp://ftp.archlinux.org/core/os/i686/core.db.tar.gz
        (archweb-env) $ ./manage.py reporead i686 core.db.tar.gz

Alter architecture and repo to get x86\_64 and packages from other repos if needed.

# Production Installation

Ask someone who knows, or you are going to be in trouble.

vim: set syntax=markdown et: