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

« back to all changes in this revision

Viewing changes to bin/buildjail.sh

  • Committer: William Grant
  • Date: 2009-01-13 01:36:15 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:1123
Merge setup-refactor branch. This completely breaks existing installations;
every path (both filesystem and Python) has changed. Do not upgrade without
knowing what you are doing.

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://mirror.gamearena.com.au/ubuntu
48
 
    #MIRROR=http://archive.ubuntu.com/ubuntu/ # Default Mirror
49
 
fi
50
 
echo "Using Mirror: $MIRROR"
51
 
 
52
 
# Do we have debootstrap? 
53
 
if [ -x /usr/sbin/debootstrap ]; then
54
 
    DEBOOTSTRAP="/usr/sbin/debootstrap"
55
 
fi
56
 
 
57
 
if [ -z "$DEBOOTSTRAP" ]; then
58
 
    echo "Error: Debootstrap not found. Is it installed?"
59
 
    return 1
60
 
fi
61
 
 
62
 
echo "Building minimal Jail..."
63
 
sudo rm -rf --one-file-system $JAIL
64
 
sudo $DEBOOTSTRAP --components=`echo $SECTIONS | tr ' ' ','` \
65
 
    --include=ubuntu-keyring \
66
 
    --variant=minbase $RELEASE $JAIL $MIRROR
67
 
 
68
 
echo "Updating package sources..."
69
 
sudo tee $JAIL/etc/apt/sources.list > /dev/null <<SOURCES
70
 
# APT Mirrors
71
 
deb http://apt.qeuni.net/ivle $RELEASE nltk matplotlib
72
 
deb $MIRROR $RELEASE main $SECTIONS
73
 
deb $MIRROR $RELEASE-security $SECTIONS
74
 
deb $MIRROR $RELEASE-updates $SECTIONS"
75
 
SOURCES
76
 
 
77
 
echo "Adding packages..."
78
 
sudo chroot $JAIL /bin/sh -c "apt-get -y update"
79
 
sudo chroot $JAIL /bin/sh -c "apt-get -y --allow-unauthenticated install \
80
 
    $SYSTEMPACKAGES $STUDENTPACKAGES"
81
 
sudo chroot $JAIL /bin/sh -c "apt-get -y upgrade"
82
 
sudo chroot $JAIL /bin/sh -c "apt-get -y clean"
83