diff --git a/BUILD.sh b/BUILD.sh
index 12f06a1..b62c9b8 100755
--- a/BUILD.sh
+++ b/BUILD.sh
@@ -29,8 +29,8 @@
 
 # ARGS
 
-PLATFORM_REPOSITORY=${1:-OSM}
-PLATFORM_VERSION=${2:-4.3.1.0.48360-1}
+PLATFORM_REPOSITORY=${1:-OSM}  # change to OSM when published
+PLATFORM_VERSION=${2:-4.3.1.0.49165-1}
 
 # must be run from the top of a workspace
 cd $(dirname $0)
@@ -67,8 +67,8 @@
 			rw.core.rwvx-rwvx-${PLATFORM_VERSION} \
 			rw.core.rwvx-rwha-1.0-${PLATFORM_VERSION} \
 			rw.core.rwvx-rwdts-${PLATFORM_VERSION} \
-			rw.automation.core-RWAUTO-${PLATFORM_VERSION} \
-            rw.core.mc-models-1.0-${PLATFORM_VERSION}
+			rw.automation.core-RWAUTO-${PLATFORM_VERSION}
+
 sudo rpm -i --replacefiles --nodeps *rpm
 popd
 rm -rf $temp
diff --git a/BUILD_UB.sh b/BUILD_UB.sh
new file mode 100755
index 0000000..3f8d3cb
--- /dev/null
+++ b/BUILD_UB.sh
@@ -0,0 +1,98 @@
+# 
+#   Copyright 2016 RIFT.IO Inc
+#
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
+#
+# Author(s): Jeremy Mordkoff
+# Creation Date: 8 Sep 2016 -- cloned from BUILD.sh and adapated for Ubuntu
+# 
+#
+
+# BUILD_UB.sh
+#
+# This is a top-level build script for RIFT.io
+#
+# args none
+#
+# dependencies -- requires sudo rights
+
+
+# ARGS
+
+PLATFORM_REPOSITORY=${1:-OSM}
+PLATFORM_VERSION=${2:-4.3.1.0.49164}
+
+# must be run from the top of a workspace
+cd $(dirname $0)
+
+# inside RIFT.io this is an NFS mount
+# so just to be safe
+test -h /usr/rift && sudo rm -f /usr/rift
+
+# enable the right repos
+curl http://repos.riftio.com/public/xenial-riftware-public-key | sudo apt-key add -
+sudo curl -o /etc/apt/sources.list.d/${PLATFORM_REPOSITORY}.list http://buildtracker.riftio.com/repo_file/ub16/${PLATFORM_REPOSITORY}/ 
+sudo apt-get update
+        
+# and install the tools
+sudo apt remove -y rw.toolchain-rwbase tcpdump
+sudo apt-get install -y rw.tools-container-tools rw.tools-scripts python 
+
+# enable the OSM repository hosted by RIFT.io
+# this contains the RIFT platform code and tools
+# and install of the packages required to build and run
+# this module
+sudo -H /usr/rift/container_tools/mkcontainer --modes build --modes ext --repo ${PLATFORM_REPOSITORY}
+
+
+
+# install the RIFT platform code:
+temp=$(mktemp -d /tmp/rw.XXX)
+pushd $temp
+
+apt-get download rw.toolchain-rwbase=${PLATFORM_VERSION} \
+			rw.toolchain-rwtoolchain=${PLATFORM_VERSION} \
+			rw.core.mgmt-mgmt=${PLATFORM_VERSION} \
+			rw.core.util-util=${PLATFORM_VERSION} \
+			rw.core.rwvx-rwvx=${PLATFORM_VERSION} \
+			rw.core.rwvx-rwdts=${PLATFORM_VERSION} \
+			rw.automation.core-RWAUTO=${PLATFORM_VERSION} \
+            rw.core.rwvx-rwha-1.0=${PLATFORM_VERSION}
+
+sudo dpkg -i --force-overwrite *deb
+
+
+popd
+rm -rf $temp
+
+# this file gets in the way of the one generated by the build
+sudo rm -f /usr/rift/usr/lib/libmano_yang_gen.so
+
+
+sudo chmod 777 /usr/rift /usr/rift/usr/share
+
+# install some base files used to create VNFs
+test -d /usr/rift/images || mkdir /usr/rift/images
+for file in Fedora-x86_64-20-20131211.1-sda-ping.qcow2 Fedora-x86_64-20-20131211.1-sda-pong.qcow2 Fedora-x86_64-20-20131211.1-sda.qcow2; do
+    test -f /usr/rift/images/$file || curl -o /usr/rift/images/$file http://repo.riftio.com/releases/open.riftio.com/4.3.1/$file 
+done
+
+####### If you are re-building, you just need to run
+# these two steps
+make -j16 
+sudo make install
+
+# you can now clone and build the UI using just make && sudo make install 
+# or you can run without the UI, e.g. 
+# note to start the RIFT.io UI please run
+echo 'sudo -H /usr/rift/rift-shell -r -i /usr/rift -a /usr/rift/.artifacts -- ./demos/launchpad.py --use-xml-mode --no-ui'
diff --git a/Makefile b/Makefile
index 668bc8f..c83dd16 100644
--- a/Makefile
+++ b/Makefile
@@ -28,7 +28,7 @@
 RIFT_BUILD = $(TOP_SRC_PATH)/.build
 RIFT_ARTIFACTS = $(TOP_ROOT_PATH)/artifacts
 RIFT_INSTALL = $(TOP_ROOT_PATH)
-RIFT_SHELL_EXE = $(TOP_ROOT_PATH)/rift-shell -b $(RIFT_BUILD) -i $(RIFT_INSTALL) -a $(RIFT_ARTIFACTS) --
+RIFT_SHELL_EXE = $(TOP_ROOT_PATH)/rift-shell -b $(RIFT_BUILD) -i $(RIFT_INSTALL) -a $(RIFT_ARTIFACTS) --standalone-submodule $(TOP_SRC_PATH) --
 
 CONFD = XML_ONLY
 
