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

« back to all changes in this revision

Viewing changes to buildjail.sh

  • Committer: mattgiuca
  • Date: 2008-02-19 00:54:28 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:500
db: get_user and get_users now return User objects instead of dictionaries.
    This is the major part of replacing dicts with User objects, as it
    propagates upwards.

Propagated User objects up through the following modules:
    listusers.py, dispatch.login, authenticate, userservice, forumutil
All of these now treat users as an object rather than a dict.

To save on the size of the changes so far, login still individually copies
fields over to the session (so the session does not yet store a user object;
that is the second part of this refactor).

WOO!! Revision 500 :)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/bin/sh
2
 
# IVLE - Informatics Virtual Learning Environment
3
 
# Copyright (C) 2007-2008 The University of Melbourne
4
 
#
5
 
# This program is free software; you can redistribute it and/or modify
6
 
# it under the terms of the GNU General Public License as published by
7
 
# the Free Software Foundation; either version 2 of the License, or
8
 
# (at your option) any later version.
9
 
#
10
 
# This program is distributed in the hope that it will be useful,
11
 
# but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 
# GNU General Public License for more details.
14
 
#
15
 
# You should have received a copy of the GNU General Public License
16
 
# along with this program; if not, write to the Free Software
17
 
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
18
 
 
19
 
# Module: buildjail.sh
20
 
# Author: David Coles
21
 
# Date:   02/02/2008
22
 
 
23
 
# This is a script to build a minimal Ubuntu chroot jail in JAIL with a set of 
24
 
# SYSTEMPACKAGES and STUDENTPACKAGES added. It downloads these packages from an 
25
 
# APT mirror located at MIRROR and will use the latest packages from the 
26
 
# release version RELEASE and sections SECTION. After installing it will clean 
27
 
# the package cache to save space.
28
 
 
29
 
# NOTE: This script will remove the JAIL diretcory and anything contained 
30
 
# within. Check the path carefully! 
31
 
 
32
 
RELEASE=hardy
33
 
SECTIONS="main universe"
34
 
JAIL=jail
35
 
SYSTEMPACKAGES="python2.5 python-cjson python-svn"
36
 
STUDENTPACKAGES="python-numpy python-matplotlib python-scipy \
37
 
    python-beautifulsoup python-lxml python-imaging \
38
 
    python-simpletal python-nltk python-nltk-data" # elementtree-1.3beta
39
 
 
40
 
# FIXME: [hack] Override the default mirror to the local AARNET one.  This 
41
 
# should really be a local configuration option, but unfortunately setup.py is 
42
 
# a bit of a mess and needs a clean up to support this. For the mean time we'll 
43
 
# override it here.
44
 
 
45
 
if [ -z "$MIRROR" ]; then
46
 
    MIRROR=http://mirror.aarnet.edu.au/pub/ubuntu/archive/
47
 
    #MIRROR=http://archive.ubuntu.com/ubuntu/ # Default Mirror
48
 
fi
49
 
echo "Using Mirror: $MIRROR"
50
 
 
51
 
# Do we have debootstrap? 
52
 
if [ -x /usr/sbin/debootstrap ]; then
53
 
    DEBOOTSTRAP="/usr/sbin/debootstrap"
54
 
fi
55
 
 
56
 
if [ -z "$DEBOOTSTRAP" ]; then
57
 
    echo "Error: Debootstrap not found. Is it installed?"
58
 
    return 1
59
 
fi
60
 
 
61
 
echo "Building minimal Jail..."
62
 
sudo rm -rf --one-file-system $JAIL
63
 
sudo $DEBOOTSTRAP --components=`echo $SECTIONS | tr ' ' ','` \
64
 
    --include=ubuntu-keyring \
65
 
    --variant=minbase $RELEASE $JAIL $MIRROR
66
 
 
67
 
echo "Updating package sources..."
68
 
sudo tee $JAIL/etc/apt/sources.list > /dev/null <<SOURCES
69
 
# APT Mirrors
70
 
deb http://apt.qeuni.net/ivle $RELEASE nltk matplotlib
71
 
deb $MIRROR $RELEASE main $SECTIONS
72
 
deb $MIRROR $RELEASE-security $SECTIONS
73
 
deb $MIRROR $RELEASE-updates $SECTIONS"
74
 
SOURCES
75
 
 
76
 
echo "Adding packages..."
77
 
sudo chroot $JAIL /bin/sh -c "apt-get -y update"
78
 
sudo chroot $JAIL /bin/sh -c "apt-get -y --allow-unauthenticated install \
79
 
    $SYSTEMPACKAGES $STUDENTPACKAGES"
80
 
sudo chroot $JAIL /bin/sh -c "apt-get -y upgrade"
81
 
sudo chroot $JAIL /bin/sh -c "apt-get -y clean"
82