blob: bfb49bc4f377ab6885d86bb793a7322212b12528 [file] [log] [blame]
Brian O'Connor5abe3db2014-08-05 02:08:34 -07001#!/bin/bash
Brian O'Connor37f0cc72014-06-06 20:03:05 -07002# vm-setup.sh
3#
4# This script installs ONOS dependencies and installs a desktop environment on a Miniet VM.
5
6ONOS_USER=mininet
7ONOS_USER_HOME=/home/${ONOS_USER}
8
Brian O'Connor37f0cc72014-06-06 20:03:05 -07009sudo apt-get update
10
Brian O'Connor3ca84022014-08-11 19:46:54 -070011# -------------- Bufferbloat Install ----------
Brian O'Connor10d941e2014-06-12 19:55:09 -070012
Brian O'Connor3ca84022014-08-11 19:46:54 -070013cd ~
14git clone https://bitbucket.org/huangty/cs144_bufferbloat.git
15sudo apt-get -y install screen
16sudo apt-get -y install python-matplotlib
Brian O'Connor10d941e2014-06-12 19:55:09 -070017
Brian O'Connor3ca84022014-08-11 19:46:54 -070018# -------------- BGP-attack Install -----------
Brian O'Connor10d941e2014-06-12 19:55:09 -070019
Brian O'Connor3ca84022014-08-11 19:46:54 -070020git clone https://bitbucket.org/jvimal/bgp.git
21cd bgp
22./install.sh
23cd ~
24
25# ------------- DHCP demo Install ------------
26
27git clone https://bitbucket.org/lantz/cs144-dhcp.git
28cd cs144-dhcp
29# TODO fix this
30#sudo ./dhcp.py --check-required
31cd ~
Brian O'Connor37f0cc72014-06-06 20:03:05 -070032
33# -------------- Setup Desktop ----------------
34sudo apt-get install -y xorg lxde
35
36#TODO: add backgrounds folder
37#TODO: change background
38# Remove wallpaper, change background color, and disable screensaver
39sudo sed -i 's/wallpaper_mode=1/wallpaper_mode=0/g' /usr/share/lxde/pcmanfm/LXDE.conf
40sudo sed -i 's/desktop_bg=#000000/desktop_bg=#104187/g' /usr/share/lxde/pcmanfm/LXDE.conf
41sudo sed -i '/screensaver/d' /etc/xdg/lxsession/LXDE/autostart
42
43DESKTOP=${ONOS_USER_HOME}/Desktop
44
45mkdir -p ${DESKTOP}
46
Brian O'Connor3ca84022014-08-11 19:46:54 -070047#cat > ${DESKTOP}/Eclipse << EOF
48#[Desktop Entry]
49#Encoding=UTF-8
50#Type=Application
51#Name=Eclipse
52#Name[en_US]=Eclipse
53#Icon=/opt/eclipse/icon.xpm
54#Exec=/usr/bin/eclipse
55#Comment[en_US]=
56#EOF
Brian O'Connor37f0cc72014-06-06 20:03:05 -070057
58cat > ${DESKTOP}/Terminal << EOF
59[Desktop Entry]
60Encoding=UTF-8
61Type=Application
62Name=Terminal
63Name[en_US]=Terminal
64Icon=konsole
65Exec=/usr/bin/x-terminal-emulator
66Comment[en_US]=
67EOF
68
Brian O'Connor3ca84022014-08-11 19:46:54 -070069#TODO
Brian O'Connor37f0cc72014-06-06 20:03:05 -070070cat > ${DESKTOP}/Docs << EOF
71[Desktop Entry]
72Encoding=UTF-8
73Type=Application
74Name=ONOS Docs
75Name[en_US]=ONOS Docs
76Icon=internet-web-browser
77Exec=/usr/bin/chromium-browser http://docs.onos.onlab.us
78Comment[en_US]=
79EOF
80
81cat > ${DESKTOP}/Wireshark << EOF
82[Desktop Entry]
83Encoding=UTF-8
84Type=Application
85Name=Wireshark
86Name[en_US]=Wireshark
87Icon=wireshark
88Exec=/usr/bin/wireshark
89Comment[en_US]=
90EOF
91
92# ------------- Install Other Tools -------------
93sudo apt-get install -y wireshark
94# Enable root-less wireshark and add mininet
95echo "Enabling wireshark group"
96echo "wireshark-common wireshark-common/install-setuid boolean true" | sudo debconf-set-selections
97sudo dpkg-reconfigure -f noninteractive wireshark-common
98sudo usermod -a -G wireshark mininet
99