~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to doc/setup/install_proc.txt

  • Committer: David Coles
  • Date: 2010-08-30 03:26:13 UTC
  • Revision ID: coles.david@gmail.com-20100830032613-d14vng0jkelniu3l
python-console: Fix globals broken with new JSON library.

simplejson always returns unicode strings. cJSON would return ordinary strings 
if possible. cPickle.loads() only accepts strings. At present we use pickle 
version 0 so they should all works as ASCII strings. Higher versions of pickle 
are not plain ASCII and are likely to break this and so this should be fixed 
at some point.

Also replaced unconditional exception with one that catches Pickle errors. Not 
sure the best way to report failures of these functions.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Installation Procedure for IVLE
2
 
# ===============================
3
 
 
4
 
# Target Machine: Ubuntu (Versions 6.06 and 7.10 - differences between
5
 
# versions noted)
6
 
#
7
 
# IMPORTANT: This is NOT a shell script. It has interactive sections and
8
 
# things that need to be customized.
9
 
# It is written like a shell script so it can be mostly cut-and-pasted into
10
 
# the shell, but it can't simply be executed.
11
 
 
12
 
# While other install guides in this package are generic, this one is very
13
 
# specific to our intended configuration. It will be very helpful if trying to
14
 
# set up IVLE on Ubuntu 7.06 or higher; less helpful for other platforms.
15
 
# This refers to ivle.conf, also included.
16
 
#
17
 
# Author: Matt Giuca
18
 
# Date: 29/1/2008
19
 
 
20
 
sudo vim /etc/apt/sources.list
21
 
 
22
 
# 7.10 (Gutsy) specific #
23
 
 
24
 
# Gutsy by default had the CD-ROM packages selected, and the Internet packages
25
 
# commented out. (A comment in the apt sources list said it was because it
26
 
# failed to verify - IMPORTANT?? Probably not.)
27
 
# Comment out line 4 (deb cdrom:...)
28
 
 
29
 
# End 7.10 (Gutsy) specific #
30
 
 
31
 
# Uncomment ALL the lines for main, restricted and universe
32
 
# (deb http:...gutsy main restricted, deb-src ... main restricted
33
 
# deb http:...gutsy universe)
34
 
# Universe is important for pysvn (python-svn) later on
35
 
# :wq
36
 
 
37
 
sudo apt-get update
38
 
 
39
 
# Apt packages
40
 
sudo apt-get install subversion
41
 
sudo apt-get install gcc libc6 libc6-dev make
42
 
# On 6.06 (Dapper):
43
 
sudo apt-get install python2.4-dev
44
 
# On 7.10 (Gutsy):
45
 
sudo apt-get install python2.5-dev
46
 
 
47
 
# Python packages needed by IVLE or student code
48
 
# See trunk/doc/dependencies.txt
49
 
wget 'http://pypi.python.org/packages/source/p/python-cjson/python-cjson-1.0.5.tar.gz'
50
 
 
51
 
tar -zxvf python-cjson-1.0.5.tar.gz
52
 
 
53
 
cd python-cjson-1.0.5
54
 
./setup.py build
55
 
sudo ./setup.py install
56
 
cd ..
57
 
 
58
 
# 6.06 (Dapper) specific
59
 
wget 'http://webpy.org/static/web.py-0.22.tar.gz'
60
 
tar -zxvf web.py-0.22.tar.gz
61
 
cd webpy
62
 
python ./setup.py build
63
 
sudo python ./setup.py install
64
 
cd ..
65
 
 
66
 
sudo apt-get install python-svn python-webpy python2.4-gtk2 python-matplotlib
67
 
# End 6.06 (Dapper) specific
68
 
 
69
 
# 7.10 (Gutsy) specific
70
 
sudo apt-get install python-svn python-webpy python-numpy python-matplotlib
71
 
# Note: I had a lot of trouble with the python-svn package.
72
 
# After playing around a bit it started working.
73
 
# python -c 'import pysvn'
74
 
# to test if it worked.
75
 
# Do Not install python-svn-dbg.
76
 
# End 7.10 (Gutsy) specific
77
 
 
78
 
#
79
 
# Installing postgres
80
 
# ===============================
81
 
#
82
 
# Some of these instructions follow
83
 
#     https://help.ubuntu.com/community/PostgreSQL
84
 
# 1. install the base packages
85
 
 
86
 
sudo apt-get install postgresql
87
 
sudo apt-get install python-pygresql
88
 
 
89
 
# Set the postgres user's postgres password
90
 
sudo -u postgres psql template1
91
 
# At the prompt type (substituting <***password***> with a real one.
92
 
ALTER USER postgres WITH ENCRYPTED PASSWORD '<***password***>';
93
 
\q
94
 
 
95
 
#
96
 
# Installing ivle
97
 
# ===============================
98
 
# Check out the IVLE trunk
99
 
svn co https://ivle.svn.sourceforge.net/svnroot/ivle/trunk ivle_svn
100
 
# Says the SourceForge certificate authority is not trusted.
101
 
# I chose "Accept (p)ermanently" - Problem??
102
 
 
103
 
# Create a postgres database
104
 
cd <<ivle source directory>>/userdb
105
 
sudo -u postgres createdb ivle
106
 
sudo -u postgres psql -d ivle < users.sql
107
 
 
108
 
# NOTE: From this point onwards it is 7.10 (Gutsy) specific. This is because I
109
 
# never was able to get IVLE to build with all dependencies on Dapper.
110
 
 
111
 
# Set up IVLE
112
 
cd ivle_svn
113
 
./setup.py listmake
114
 
./setup.py config
115
 
 
116
 
# "Root directory" - type "/"
117
 
# "UID of web server process" - 1000 at this stage (informatics)
118
 
# Leave others default.
119
 
# Note: This will cause IVLE to get installed to /opt/ivle
120
 
 
121
 
./setup.py build
122
 
sudo ./setup.py install
123
 
 
124
 
# Create a user
125
 
sudo ./makeuser.py <username>
126
 
 
127
 
# Set up the Apache HTTP server
128
 
sudo apt-get install apache2 libapache2-mod-python
129
 
 
130
 
# DO: Copy the file "ivle.conf" from this package to
131
 
# /etc/apache2/sites-available.
132
 
# MODIFY the first few lines so it is specific to your server.
133
 
 
134
 
# Replace the existing config link with the ivle one
135
 
cd /etc/apache2/sites-enabled/
136
 
sudo ln -fs /etc/apache2/sites-available/ivle.conf 000-default
137
 
 
138
 
# Make the directory corresponding to the directory for saved session
139
 
# objects in the apache config ivle.conf. Make sure it is owned by www-data,
140
 
# or at least readable and writable by it.
141
 
 
142
 
sudo mkdir /home/informatics/sessions
143
 
sudo chown www-data:www-data /home/informatics/sessions
144
 
 
145
 
# Restart the server
146
 
sudo apache2ctl -k restart
147
 
 
148
 
 
149
 
#
150
 
# Installing Pound
151
 
sudo apt-get install pound
152
 
 
153
 
# edit /etc/default/pound so that the line reading
154
 
#     startup=0
155
 
# instead reads
156
 
#     startup=1
157
 
#
158
 
# copy pound.cfg to /etc/pound/pound.cfg
159
 
# edit IP addresses in pound.cfg