fixes plus added optical and distributed
diff --git a/dist-setup-lxc.sh b/dist-setup-lxc.sh
new file mode 100644
index 0000000..95c7123
--- /dev/null
+++ b/dist-setup-lxc.sh
@@ -0,0 +1,82 @@
+#!/bin/bash
+
+export USER=distributed
+export USER_HOME=/home/${USER}
+
+echo "Creating distributed tutorial"
+
+IDEA_URL=http://download.jetbrains.com/idea/ideaIC-14.0.2.tar.gz
+
+cd ~
+
+git clone https://github.com/bocon13/onos-byon.git
+
+sed -i -e 's/open/xdg-open/' ~/onos/tools/test/bin/onos-gui
+
+cat > ~/startmn.sh << EOF
+#!/bin/bash
+sudo python ~/onos/tools/test/topos/sol.py \$OC1 \$OC2 \$OC3
+EOF
+
+chmod +x ~/startmn.sh
+
+DESKTOP=${USER_HOME}/Desktop
+
+mkdir -p ${DESKTOP}
+
+cat > ${DESKTOP}/IntelliJ << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=IntelliJ
+Name[en_US]=IntelliJ
+Icon=/home/distributed/Applications/idea/bin/idea.png
+Exec=/home/distributed/Applications/idea/bin/idea.sh
+Comment[en_US]=
+EOF
+
+cat > ${DESKTOP}/Tutorial << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=ONOS Tutorial
+Name[en_US]=ONOS Tutorial
+Icon=internet-web-browser
+Exec=/usr/bin/chromium-browser https://wiki.onosproject.org/display/ONOS/Distributed+ONOS+Tutorial
+Comment[en_US]=
+EOF
+
+
+cat > ${DESKTOP}/Wireshark << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=Wireshark
+Name[en_US]=Wireshark
+Icon=wireshark
+Exec=/usr/bin/wireshark
+Comment[en_US]=
+EOF
+
+cat > ${DESKTOP}/Terminal << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Name=LXTerminal
+TryExec=lxterminal
+Exec=lxterminal
+Icon=lxterminal
+Type=Application
+Categories=GTK;Utility;TerminalEmulator;
+EOF
+
+sudo apt-get install -y git-review
+
+# Install IntelliJ
+mkdir ~/Applications
+cd ~/Applications
+
+wget -c -N -O /tmp/idea.tar.gz ${IDEA_URL}
+tar xzf /tmp/idea.tar.gz 
+sudo mv idea-IC-139.659.2 idea
+
+cd -
\ No newline at end of file
diff --git a/onos-setup-lxc.sh b/onos-setup-lxc.sh
index 14110f4..7e105e3 100644
--- a/onos-setup-lxc.sh
+++ b/onos-setup-lxc.sh
@@ -121,7 +121,7 @@
 export OC1="10.0.3.11"
 export OC2="10.0.3.12"
 export OC3="10.0.3.13"
-export OCI="${OC1}"
+export OCI="10.0.3.11"
 export ONOS_FEATURES="webconsole,onos-rest,onos-gui,onos-api,onos-core,onos-cli,onos-openflow"
 export ONOS_USER="sdn"
 EOF
@@ -129,7 +129,7 @@
 cat << EOF >> onos/tools/test/cells/1node
 export ONOS_NIC=10.0.3.*
 export OC1="10.0.3.11"
-export OCI="${OC1}"
+export OCI="10.0.3.11"
 export ONOS_FEATURES="webconsole,onos-rest,onos-gui,onos-api,onos-core,onos-cli,onos-openflow"
 export ONOS_USER="sdn"
 EOF
@@ -158,6 +158,8 @@
 cat << EOF >> ${USER_HOME}/reset-to-1.sh
 #!/bin/bash
 export ONOS_ROOT=/home/mininet/onos
+export M2_REPO=/home/mininet/.m2/repository
+export KARAF_TAR=/home/mininet/apache-karaf-3.0.2.tar.gz
 . ${ONOS_ROOT}/tools/dev/bash_profile
 . ${ONOS_ROOT}/tools/build/envDefaults
 
@@ -165,23 +167,29 @@
 onos-service --cell stop
 cell 1node
 onos-package
-onos-install -f $OC1
+onos-install -f '$OC1'
 EOF
 
+sudo chmod 777 ${USER_HOME}/reset-to-1.sh
+
 cat << EOF >> ${USER_HOME}/reset-to-3.sh
 #!/bin/bash
 export ONOS_ROOT=/home/mininet/onos
+export M2_REPO=/home/mininet/.m2/repository
+export KARAF_TAR=/home/mininet/apache-karaf-3.0.2.tar.gz
 . ${ONOS_ROOT}/tools/dev/bash_profile
 . ${ONOS_ROOT}/tools/build/envDefaults
 
 cell 3node
 onos-service --cell stop
 onos-package
-onos-install -f $OC1
-onos-install -f $OC2
-onos-install -f $OC3
+onos-install -f '$OC1'
+onos-install -f '$OC2'
+onos-install -f '$OC3'
 EOF
 
+sudo chmod 777 ${USER_HOME}/reset-to-3.sh
+
 # ------------- Set up each tutorial -------------
 
 create_user tutorial1 "Basic ONOS Tutorial"
@@ -194,11 +202,20 @@
 
 SDNIP_URL='https://gerrit.onosproject.org/gitweb?p=onos-vm.git;a=blob_plain;hb=refs/heads/new-onos-tutorial;f=sdnip-setup-lxc.sh'
 wget -O sdnip-setup-lxc.sh $SDNIP_URL
-sudo -u ${SDN_IP_USER} -H sh -c 'cp sdnip-setup-lxc.sh ~/ && cd ~/ && sh sdnip-setup-lxc.sh'
+sudo -u sdnip -H sh -c 'cp sdnip-setup-lxc.sh ~/ && cd ~/ && sh sdnip-setup-lxc.sh'
 
 create_user distributed "Distributed Tutorial"
+
+DIST_URL='https://gerrit.onosproject.org/gitweb?p=onos-vm.git;a=blob_plain;hb=refs/heads/new-onos-tutorial;f=dist-setup-lxc.sh'
+wget -O dist-setup-lxc.sh $DIST_URL
+sudo -u distributed -H sh -c 'cp dist-setup-lxc.sh ~/ && cd ~/ && sh dist-setup-lxc.sh'
+
 create_user optical "Optical Tutorial"
 
+OPT_URL='https://gerrit.onosproject.org/gitweb?p=onos-vm.git;a=blob_plain;hb=refs/heads/new-onos-tutorial;f=opt-setup-lxc.sh'
+wget -O opt-setup.sh $OPT_URL
+sudo -u optical -H sh -c 'cp opt-setup-lxc.sh ~/ && cd ~/ && sh opt-setup-lxc.sh'
+
 # ------------- Zero Unused Blocks -------------
 #TODO investigate zerofree
 echo "Zeroing unused blocks"
diff --git a/opt-setup-lxc.sh b/opt-setup-lxc.sh
new file mode 100644
index 0000000..0c5a6af
--- /dev/null
+++ b/opt-setup-lxc.sh
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+export USER=optical
+export USER_HOME=/home/${USER}
+
+echo "Creating optical tutorial"
+
+DESKTOP=${USER_HOME}/Desktop
+
+mkdir -p ${DESKTOP}
+
+cat > ${DESKTOP}/ONOS << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=ONOS
+Name[en_US]=ONOS
+Icon=konsole
+Exec=/usr/bin/lxterminal -t 'ONOS' -e '/home/mininet/apache-karaf-3.0.2/bin/client -u karaf -h 10.0.3.11'
+Comment[en_US]=
+EOF
+
+cat > "${DESKTOP}/Mininet Small" << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=Mininet Small
+Name[en_US]=Mininet Small
+Icon=konsole
+Exec=/usr/bin/lxterminal -t 'Mininet Small Topology' -e 'sudo -E python /home/mininet/onos/tools/test/topos/opticalTest.py'
+Comment[en_US]=
+EOF
+
+cat > "${DESKTOP}/Mininet Large" << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=Mininet Large
+Name[en_US]=Mininet Large
+Icon=konsole
+Exec=/usr/bin/lxterminal -t 'Mininet Large Topology' -e 'sudo -E python /home/mininet/onos/tools/test/topos/opticalTestBig.py'
+Comment[en_US]=
+EOF
+
+cat > "${DESKTOP}/LINC-OE" << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=LINC-OE
+Name[en_US]=LINC-OE
+Icon=konsole
+Exec=/usr/bin/lxterminal -t 'LINC-OE' -e 'sudo linc-oe/rel/linc/bin/linc attach'
+Comment[en_US]=
+EOF
+
+cat > ${DESKTOP}/Tutorial << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=Tutorial
+Name[en_US]=Tutorial
+Icon=internet-web-browser
+Exec=/usr/bin/chromium-browser https://wiki.onosproject.org/display/ONOS/Packet+Optical+Tutorial
+Comment[en_US]=
+EOF
+
+cat > ${DESKTOP}/GUI << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=ONOS GUI
+Name[en_US]=ONOS GUI
+Icon=internet-web-browser
+Exec=/usr/bin/chromium-browser http://10.0.3.11:8181/onos/ui/index.html#topo
+Comment[en_US]=
+EOF
+
+cat > ${DESKTOP}/Wireshark << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=Wireshark
+Name[en_US]=Wireshark
+Icon=wireshark
+Exec=/usr/bin/wireshark
+Comment[en_US]=
+EOF
+
+
+cat > ${DESKTOP}/Reset-ONOS << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=Reset ONOS
+Name[en_US]=Reset ONOS
+Icon=konsole
+Exec=/usr/bin/lxterminal -t 'Resetting; please wait' -e '/bin/bash -c /home/mininet/reset-to-1.sh'
+Comment[en_US]=
+EOF
+
+
+cat > ${DESKTOP}/Reset << EOF
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=Reset
+Name[en_US]=Reset
+Icon=konsole
+Exec=/usr/bin/lxterminal -t 'Resetting; please wait' -e 'sudo mn -c'
+Comment[en_US]=
+EOF
+
+# -------------- Setup LINC & dependencies ---------------
+git clone https://github.com/FlowForwarding/LINC-config-generator.git
+cd ~/LINC-config-generator
+git checkout oe-0.4
+make
+cd
+
+git clone https://github.com/FlowForwarding/LINC-Switch.git linc-oe
+cd linc-oe
+sed -i s/3000/300000/ rel/files/vm.args
+cp rel/files/sys.config.orig rel/files/sys.config
+make rel
+cd
\ No newline at end of file
diff --git a/tutorial1-setup-lxc.sh b/tutorial1-setup-lxc.sh
index 5392095..a38b58e 100644
--- a/tutorial1-setup-lxc.sh
+++ b/tutorial1-setup-lxc.sh
@@ -26,7 +26,7 @@
 Name=Mininet
 Name[en_US]=Mininet
 Icon=konsole
-Exec=/usr/bin/lxterminal -e 'sudo mn --custom /home/mininet/onos/tools/test/topos/tower.py --topo tower --controller,10.0.3.11 remote --mac'
+Exec=/usr/bin/lxterminal -e 'sudo mn --custom /home/mininet/onos/tools/test/topos/tower.py --topo tower --controller remote,10.0.3.11 --mac'
 Comment[en_US]=
 EOF
 
diff --git a/vm-setup-lxc.sh b/vm-setup-lxc.sh
index b7bfcb9..42c3adf 100644
--- a/vm-setup-lxc.sh
+++ b/vm-setup-lxc.sh
@@ -8,7 +8,7 @@
 
 # TODO erlang, quagga, wireshark
 #sudo apt-get install -y git openjdk-8-jdk maven unzip curl make gcc wget autoconf openssl libssl0.9.8 libssl-dev libncurses5 libncurses5-dev lxc
-sudo apt-get install -y git openjdk-8-jdk maven unzip curl wget lxc virtualbox-guest-utils wireshark
+sudo apt-get install -y git openjdk-8-jdk maven unzip curl wget lxc virtualbox-guest-utils wireshark quagga erlang make gcc autoconf openssl libssl0.9.8 libssl-dev libncurses5 libncurses5-dev
 
 sudo update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
 sudo update-alternatives --set javac /usr/lib/jvm/java-8-openjdk-amd64/bin/javac