diff options
-rw-r--r-- | README.pod | 19 | ||||
-rw-r--r-- | notes/INSTALL | 94 | ||||
-rw-r--r-- | notes/code_structure.txt | 11 | ||||
-rw-r--r-- | notes/glossary.txt | 6 |
4 files changed, 130 insertions, 0 deletions
diff --git a/README.pod b/README.pod new file mode 100644 index 000000000..f6041e286 --- /dev/null +++ b/README.pod @@ -0,0 +1,19 @@ + +=head1 NAME + +FixMyStreet + +=head1 DESCRIPTION + +FixMyStreet is a project that allows anyone to report an issue such as potholes, +broken street lights, severe littering, water leaks. These issues are then +routed to the correct body who can arrange to have them fixed. + +=head1 INSTALLING + +Installing from scratch can be a bit daunting but is fully documented in the +notes/INSTALL file. + +We are hoping to make it much easier for you to try the code by letting you +start a fully installed system with test data pre-loaded on Amazon's servers. +More details will follow soon. diff --git a/notes/INSTALL b/notes/INSTALL new file mode 100644 index 000000000..ea924c8f7 --- /dev/null +++ b/notes/INSTALL @@ -0,0 +1,94 @@ +# INSTALLING FROM SCRATCH + +# mySociety applications are intended to be run on a Debian system. Other Linux +# distributions may well work but may also require some tweaking. + +# This document assumes that you are starting with a bare Debian Lenny box and +# that you want to install the latest code from GitHub. For some step you will +# need root access (via sudo) + + + +# GETTING THE CODE + + +# bring your system up-to-date +# FIXME - ???should we specify any extras apt sources??? +sudo apt-get update +sudo apt-get upgrade + +# ensure that you have 'git' installed +sudo apt-get install git-core + +# fetch the FixMyStreet code from GitHub: +git clone https://github.com/mysociety/fixmystreet.git + +# fetch the submodules too +cd fixmystreet +git submodule update --init + +# SETTING UP SYSTEM + +# change into project directory +cd ~/fixmystreet + +# check that you have all the packages needed. mySociety projects always have a +# file in 'conf/packages' where any debian ones needed are listed +sudo apt-get install `cat conf/packages` + +# also install these that are available by default on mySoc boxes: +libregexp-common-perl php5-cli + + + + +# SETTING UP APACHE + +cd /etc/apache2 + +# there is an apache config file in 'conf/httpd.conf' - insert it as per sample +# config at top of file into your /etc/apache2/ config setup +sudo nano sites-available/fixmystreet +sudo ln -s ../sites-available/fixmystreet sites-enabled/ + +# you may need to enable some modules too +sudo ln -s ../mods-available/rewrite.load mods-enabled/ +sudo ln -s ../mods-available/proxy.load mods-enabled/ +sudo ln -s ../mods-available/proxy_http.load mods-enabled/ + +# check the config and restart apache +sudo apache2ctl configtest +sudo apache2ctl restart + +cd - + +# You may need to change the permissions on your files so that apache can read them +# sudo chgrp -Rc www-data ~/fixmystreet + + +# SETTING UP CONFIG FILES + +# the setup is configured using the file 'conf/general' - copy the example one and then edit it +cp conf/general-example conf/general +nano conf/general + +# Really you only need to alter the database connection details - the rest should be fine + + + +# SETTING UP THE DATABASES + +# create your own db user (as a superuser to make things easier) +sudo su - postgres +createuser -s your_username +exit + +# You'll need to create a database, enable plpgsql and load in the schema +createdb -E SQL_ASCII bci +createlang plpgsql bci +psql bci < db/schema.sql + + +# LOOK AT THE SITE IN YOUR BROWSER + +# everything should now be set up - please try to load the site in your browser diff --git a/notes/code_structure.txt b/notes/code_structure.txt new file mode 100644 index 000000000..8c01fba8b --- /dev/null +++ b/notes/code_structure.txt @@ -0,0 +1,11 @@ +The code is broken down into the following sections: + +website: code to display the website and handle user submissions + +backend: send alerts to the councils, work out who should get the alert, various +confirmtaion emails + +mobile apps: currently for iPhone and Android - two separate apps + +utility scripts: odds and ends - eg importing photos from Flickr tagged +'fixmystreet' diff --git a/notes/glossary.txt b/notes/glossary.txt new file mode 100644 index 000000000..82b09bdf1 --- /dev/null +++ b/notes/glossary.txt @@ -0,0 +1,6 @@ +Unfamiliar terms that you may come across in the code: + + +BCI: Broken Civic Infrastructure - project name before it became FixMyStreet - +still to be found used in some config variable names + |