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

« back to all changes in this revision

Viewing changes to doc/setup/install_proc.txt

  • Committer: mattgiuca
  • Date: 2008-06-02 06:37:05 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:758
authenticate.py: Bugfix - Exception if no additional auth modules are given
    in conf.py.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
# Installation Procedure for IVLE
2
2
# ===============================
3
3
 
4
 
# Target Machine: Ubuntu (Versions 6.06 and 7.10 - differences between
5
 
# versions noted)
 
4
# Target Platform: Ubuntu 7.10
6
5
#
7
6
# IMPORTANT: This is NOT a shell script. It has interactive sections and
8
7
# things that need to be customized.
19
18
 
20
19
sudo vim /etc/apt/sources.list
21
20
 
22
 
# 7.10 (Gutsy) specific #
23
 
 
24
21
# Gutsy by default had the CD-ROM packages selected, and the Internet packages
25
22
# commented out. (A comment in the apt sources list said it was because it
26
23
# failed to verify - IMPORTANT?? Probably not.)
27
24
# Comment out line 4 (deb cdrom:...)
28
25
 
29
 
# End 7.10 (Gutsy) specific #
30
 
 
31
26
# Uncomment ALL the lines for main, restricted and universe
32
27
# (deb http:...gutsy main restricted, deb-src ... main restricted
33
28
# deb http:...gutsy universe)
34
29
# Universe is important for pysvn (python-svn) later on
35
30
# :wq
36
31
 
 
32
##########################################################################
 
33
# Apt packages
 
34
##########################################################################
 
35
 
37
36
sudo apt-get update
38
 
 
39
 
# Apt packages
40
37
sudo apt-get install subversion
41
38
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
 
 
 
39
sudo apt-get install apache2 libapache2-mod-python
 
40
sudo apt-get install python2.5-dev python-svn python-webpy
 
41
sudo apt-get install python-numpy python-matplotlib
 
42
sudo apt-get install postgresql python-pygresql python-ldap
 
43
sudo apt-get install php5 php5-pgsql
 
44
 
 
45
# Note: I had a lot of trouble with the python-svn package.
 
46
# After playing around a bit it started working.
 
47
# python -c 'import pysvn'
 
48
# to test if it worked.
 
49
# Do Not install python-svn-dbg.
 
50
 
 
51
##########################################################################
47
52
# Python packages needed by IVLE or student code
 
53
##########################################################################
 
54
#
48
55
# See trunk/doc/dependencies.txt
 
56
 
 
57
# CJSON
 
58
# Note: apt-get install python-cjson puts it in an unexpected place.
 
59
# Setup doesn't handle this correctly, so just install by hand:
 
60
 
49
61
wget 'http://pypi.python.org/packages/source/p/python-cjson/python-cjson-1.0.5.tar.gz'
50
 
 
51
62
tar -zxvf python-cjson-1.0.5.tar.gz
52
63
 
53
64
cd python-cjson-1.0.5
55
66
sudo ./setup.py install
56
67
cd ..
57
68
 
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
 
 
 
69
 
 
70
# NLTK for student code
 
71
wget 'http://prdownloads.sourceforge.net/nltk/nltk-0.9.2.tar.gz'
 
72
tar -xzvf nltk-0.9.2.tar.gz
 
73
wget 'http://prdownloads.sourceforge.net/nltk/nltk-data-0.9.2.zip'
 
74
unzip nltk-data-0.9.2.zip
 
75
 
 
76
cd nltk-0.9.2
 
77
sudo python setup.py install
 
78
cd ..
 
79
sudo mkdir /usr/share/nltk
 
80
sudo mv data /usr/share/nltk/
 
81
sudo chmod -R g+r /usr/share/nltk/data
 
82
 
 
83
# Beautiful Soup for student code
 
84
# via apt-get
 
85
sudo apt-get install python-beautifulsoup
 
86
# or
 
87
wget 'http://www.crummy.com/software/BeautifulSoup/download/BeautifulSoup.tar.gz'
 
88
tar -xzvf BeautifulSoup.tar.gz
 
89
 
 
90
cd BeautifulSoup*
 
91
sudo python setup.py install
 
92
cd ..
 
93
 
 
94
# LXML for student code
 
95
sudo apt-get install python-lxml
 
96
 
 
97
# Python Imaging Library for student code
 
98
sudo apt-get install python-imaging
 
99
 
 
100
# Elementtree 1.3a for student code
 
101
# Needs libtidy for 'TidyHTML' parts
 
102
sudo apt-get install libtidy-0.99-0 
 
103
 
 
104
svn co http://svn.effbot.org/public/tags/elementtree-1.3a3-20070912/ elementtree1.3
 
105
cd elementtree1.3
 
106
sudo python setup.py install
 
107
cd ..
 
108
 
 
109
# SimpleTAL for student code
 
110
sudo apt-get install python-simpletal
 
111
 
 
112
# SciPy for student code
 
113
sudo apt-get install python-scipy
 
114
 
 
115
# Documentation packages needed for tutorial system: Docutils, Epydoc
 
116
# wget each of these, untar them, and then do: sudo python ./setup.py install
 
117
 
 
118
http://docutils.sourceforge.net/docutils-snapshot.tgz
 
119
http://downloads.sourceforge.net/epydoc/epydoc-3.0.1.tar.gz?use_mirror=optusnet
 
120
 
 
121
# Or using apt-get
 
122
# (Note: epydoc doesn't work on Fiesty using apt-get)
 
123
 
 
124
sudo apt-get install python-docutils python-epydoc
 
125
 
 
126
##########################################################################
 
127
# Configure postgres
 
128
##########################################################################
 
129
#
 
130
# Some of these instructions follow
 
131
#     https://help.ubuntu.com/community/PostgreSQL
 
132
# 1. install the base packages
 
133
 
 
134
# Set the postgres user's postgres password
 
135
sudo -u postgres psql template1
 
136
# At the prompt type (substituting <***password***> with a real one.
 
137
ALTER USER postgres WITH ENCRYPTED PASSWORD '<***password***>';
 
138
\q
 
139
 
 
140
##########################################################################
 
141
# Installing ivle
 
142
##########################################################################
 
143
#
78
144
# Check out the IVLE trunk
79
 
svn co https://ivle.svn.sourceforge.net/svnroot/ivle/trunk ivle_svn
80
 
# Says the SourceForge certificate authority is not trusted.
81
 
# I chose "Accept (p)ermanently" - Problem??
82
 
 
83
 
# NOTE: From this point onwards it is 7.10 (Gutsy) specific. This is because I
84
 
# never was able to get IVLE to build with all dependencies on Dapper.
 
145
 
 
146
export IVLE_SVN=ivle_svn
 
147
svn co https://ivle.svn.sourceforge.net/svnroot/ivle/trunk $IVLE_SVN
 
148
cd $IVLE_SVN
 
149
 
 
150
# Create a postgres database
 
151
# (only need the first line if it was previously created and is now changed)
 
152
sudo -u postgres dropdb ivle
 
153
sudo -u postgres createdb ivle
 
154
sudo -u postgres psql -d ivle < userdb/users.sql
85
155
 
86
156
# Set up IVLE
87
 
cd ivle_svn
88
157
./setup.py listmake
89
158
./setup.py config
90
159
 
91
 
# "Root directory" - type "/"
 
160
# "Root directory" - type "/" or "/ivle" (without the quotes)
92
161
# "UID of web server process" - 1000 at this stage (informatics)
93
162
# Leave others default.
94
163
# Note: This will cause IVLE to get installed to /opt/ivle
96
165
./setup.py build
97
166
sudo ./setup.py install
98
167
 
 
168
# Make the directory containing the svn auth.  Make sure it is owned by 
 
169
# www-data, or at least readable and writable by it.
 
170
# Make the SVN directory for IVLE
 
171
sudo mkdir /opt/ivle/svn
 
172
sudo chown -R www-data:www-data /opt/ivle/svn
 
173
 
99
174
# Create a user
100
 
sudo ./makeuser.py <username>
101
 
 
102
 
# Set up the Apache HTTP server
103
 
sudo apt-get install apache2 libapache2-mod-python
104
 
 
105
 
# DO: Copy the file "ivle.conf" from this package to
106
 
# /etc/apache2/sites-available.
 
175
sudo ./makeuser.py [OPTIONS] <login> 'Firstname Lastname' <rolenm> -p <password>
 
176
# role = guest/student/tutor/lecturer/admin
 
177
 
 
178
# Configure the Apache HTTP server
 
179
sudo cp doc/setup/ivle.conf /etc/apache2/sites-available
107
180
# MODIFY the first few lines so it is specific to your server.
 
181
vim /etc/apache2/sites-available/ivle.conf
108
182
 
109
183
# Replace the existing config link with the ivle one
110
184
cd /etc/apache2/sites-enabled/
111
185
sudo ln -fs /etc/apache2/sites-available/ivle.conf 000-default
112
186
 
 
187
# Make the directory corresponding to the directory for saved session
 
188
# objects in the apache config ivle.conf. Make sure it is owned by www-data,
 
189
# or at least readable and writable by it.
 
190
 
 
191
sudo mkdir /home/informatics/sessions
 
192
sudo chown www-data:www-data /home/informatics/sessions
 
193
 
113
194
# Restart the server
114
195
sudo apache2ctl -k restart
115
196
 
116
 
#
117
 
# Installing postgres
118
 
# ===============================
119
 
#
120
 
# Some of these instructions follow
121
 
#     https://help.ubuntu.com/community/PostgreSQL
122
 
# 1. install the base packages
123
 
 
124
 
sudo apt-get install postgresql
125
 
sudo apt-get install python-pygresql
126
 
 
127
 
# Set the postgres user's postgres password
128
 
sudo -u postgres psql template1
129
 
# At the prompt type (substituting <***password***> with a real one.
130
 
ALTER USER postgres WITH ENCRYPTED PASSWORD '<***password***>';
131
 
\q
132
 
 
133
 
# Create a database
134
 
cd <<ivle source directory>>/userdb
135
 
sudo -u postgres createdb ivle
136
 
sudo -u postgres psql -d ivle < users.sql
137
 
 
138
 
#
139
 
# Installing Pound
 
197
##########################################################################
 
198
# User management server: usrmgt-server
 
199
##########################################################################
 
200
# To start the user management server:
 
201
cd /opt/ivle/scripts
 
202
sudo ./usrmgt-server <port> <usrmgt-password>
 
203
# usrmgt-password is the password entered in setup.py config (usrmgt_magic)
 
204
# Note that the port number and usrmgt password are recorded in
 
205
# the automatically created init.d script: doc/setup/usrmgt-server.init
 
206
 
 
207
# To run it at boot time:
 
208
sudo cp doc/setup/usrmgt-server.init /etc/init.d
 
209
sudo chown root:root /etc/init.d/usrmgt-server
 
210
sudo chmod 700 /etc/init.d/usrmgt-server  # so world can't read database magic
 
211
sudo update-rc.d usrmgt-server defaults 99  # create symlinks in /etc/rc*.d
 
212
 
 
213
##########################################################################
 
214
# Setting up phpBB Forum in IVLE
 
215
##########################################################################
 
216
# This should all be run from the SVN directory
 
217
 
 
218
# Create a postgres database
 
219
# (only need the first line if it was previously created and is now changed)
 
220
sudo -u postgres dropdb ivle_forum
 
221
sudo -u postgres createdb ivle_forum
 
222
sudo -u postgres psql -d ivle_forum < userdb/forum_schema.sql
 
223
sudo -u postgres psql -d ivle_forum < userdb/forum_data.sql
 
224
 
 
225
#Change to the installed IVLE directory
 
226
cd /opt/ivle
 
227
# Fix permissions for install
 
228
cd www/php/phpBB3
 
229
# At very minimum you apache user must be able to write to
 
230
# cache/ files/ store/ images/avatars/upload config.php
 
231
sudo chown -R www-data:www-data .
 
232
 
 
233
##########################################################################
 
234
# Installing Pound reverse proxy (optional)
 
235
##########################################################################
 
236
 
140
237
sudo apt-get install pound
141
238
 
142
239
# edit /etc/default/pound so that the line reading