Skip to content

demozoo/demozoo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Demozoo

Developer installation

It's possible to run Demozoo a number of different ways, but work has been done to facilitate running it rather smoothly in either Vagrant or Docker.

First, clone this very repository to a folder on your hard drive:

git clone https://github.com/demozoo/demozoo.git
cd demozoo

Vagrant

After installing Vagrant and VirtualBox, bring up Demozoo as follows:

vagrant up

This will download an Ubuntu Jammy64 image, install dependencies, and fetch the latest public export of the Demozoo database. To start up the site:

vagrant ssh
# then within the Vagrant VM:
./manage.py runserver 0.0.0.0:8000

Alternatively you may need to run :

python ./manage.py runserver 0.0.0.0:8000

The site will now be available at http://localhost:8000/.

Docker

Warning

Installation under Docker is experimental and work in progress. Currently front-end assets (CSS and SVG icons) are not built automatically - these must be built manually after installation.

After installing Docker Desktop, you can bring up Demozoo by typing the following:

cp .docker/.env.example .docker/.env
docker-compose up

This will download the postgres:14-bullseye and python:3.10 images and bootstrap the database with data from the latest Demozoo export.

Booting up the first time will take quite a while, as the database import is large, so be patient. The error messages logged from demozoo-web during the import can be ignored. When the import is done, Running the server on http://localhost:8000 should be printed to the console. You should then be able to visit http://localhost:8000 in a web browser of your choice.

The data files from Postgres are by default stored in the .docker/db/pgdata directory. If you want to wipe the database clean, simply delete that folder.

Rebuilding indices for the database

If you want to work with the search feature, you have to rebuild your database indices first:

./manage.py reindex

This will take a long time, but you only need to do it once.

Creating an admin user

All account passwords in the public database export are blanked, so you'll need to create a new account to log in. To create a superuser account:

./manage.py createsuperuser

and enter the account details when prompted.

Batteries not included

The procedure above gives you a basic working Demozoo installation, but several features are unavailable due to needing additional configuration:

  • file uploads (Amazon S3)
  • screenshot processing
  • background tasks (scene.org spidering, fetching screenshots from graphics releases...)

Instructions for these will be forthcoming, at least when someone asks for them :-)

Gasman matt@west.co.tt - https://twitter.com/gasmanic