How I Got FYR Working on my Box
questions/queries: send 'em to adam at mysociety.org-Ta!
Prerequisites
Apache and
Apache-SSL
PostgreSQL (including
pg_config)
MySQL (for NA/NA-codebase projects) Perl (cpan: Error, FCGI, IO::String, DBD::Pg (requires pg_config)
Python
[identd (if using ident for postgres authentication)
FastCGI
PEAR: adam@horcrux:~$ pear list
Installed packages:
Package Version State
Archive_Tar 1.3.1 stable
Console_Getopt 1.2 stable
DB 1.7.6 stable
HTML_Common 1.2.1 stable
HTML_QuickForm 3.2.5 stable
HTTP 1.3.6 stable
HTTP_Request 1.2.4 stable
Mail 1.1.6 stable
Net_SMTP 1.2.6 stable
Net_Socket 1.0.6 stable
Net_URL 1.0.14 stable
PEAR 1.3.5 stable
XML_Parser 1.2.6 stable
XML_RPC 1.3.3 stable
[Because I'm lazy, and still attempting to 'get' PostGres (and haven't bought a PG Book yet), I found
phppgadmin useful. Others will, no doubt, disapprove, and believe this a 'cheats method]
So, getting it working: I won't number, as thing will prolly need to be changed
Get the Code
Get the CVS Repository: (make a new directory somewhere, then:)
CVSROOT=:pserver:
anonymous@cvs.mysociety.org:/repos cvs login cvs -d :pserver:
anonymous@cvs.mysociety.org:/repos co mysociety
Now, assuming you'll want to update your CVS files once in a while, it may be useful to store the config files somewhere, so they won't get over-written with an update. Perhaps symlink the various 'web' directories to vhosts/$project if that's your approach
Webserver config
Make some vhosts (assuming name-based vhosting), Either with BIND/named &c, or, in [/etc/]hosts for:
secure ; for the admin bits
services ; Things like RaTty, Evel, Gaze...
fyr ; faxyourrepresentative/writetothem
na ; not apathetic
pb ; pledgebank
ycml ; yourconstituencymailinglist
gia ; give it away
Check the destinations are pingable
Then do the Apache magic - look for the httpd.conf file in mysociety/$function/conf: configure locations according to where you placed the cvs files.
Note the details in mysociety/services/Ratty/server
Databases
I then created the SQL structures, those are usually mysociety/$project/db/schema.sql - although MaPit and DaDem aren't; I did new databases for each project, created a mySoc unix user account, and did the database permissions in [/etc/postgresql/]pg_ident.conf and [/etc/postgresql/]pg_hba.conf
Setting up Services
Rename 'general-example' to general, making changes needed (may need some chmod'ing) Create the databases needed, and populate, partic for Evel (I pasted, but guess it can be redirected in)
Gaze: there be data in mysociety/services/Gaze/data Queues: no idea which database to feed serivces/Queue/schema.sql into - perhaps a script to create and populate the databases would be useful if given details of the server/user/pass?
