Upgrade to Debian 9 (a.k.a. stretch)
Change-Id: Ibc0b20a8fd331816cfcccc7a8877efe12fdf8e37
diff --git a/vm/setup_code_building.sh b/vm/setup_code_building.sh
index cbb8fcd..0ddc65f 100755
--- a/vm/setup_code_building.sh
+++ b/vm/setup_code_building.sh
@@ -6,15 +6,17 @@
export DEBIAN_FRONTEND=noninteractive
readonly PKGS=(
- bazel
- clang-3.6
- clang-format-3.5
+ clang-3.9
+ clang-format-3.9
+ curl
gfortran
git
+ g++
libblas-dev
liblapack-dev
libpython3-dev
libpython-dev
+ openjdk-8-jdk
python3
python3-matplotlib
python3-numpy
@@ -23,22 +25,18 @@
python-scipy
resolvconf
ruby
+ zlib1g-dev
)
# Set up the backports repo.
cat > /etc/apt/sources.list.d/backports.list <<EOT
-deb http://http.debian.net/debian jessie-backports main
+deb http://http.debian.net/debian stretch-backports main contrib
EOT
# Set up the LLVM repo.
-cat > /etc/apt/sources.list.d/llvm-3.6.list <<EOT
-deb http://llvm.org/apt/jessie/ llvm-toolchain-jessie-3.6 main
-deb-src http://llvm.org/apt/jessie/ llvm-toolchain-jessie-3.6 main
-EOT
-
-# Set up the 971-managed bazel repo.
-cat > /etc/apt/sources.list.d/bazel-971.list <<EOT
-deb http://robotics.mvla.net/files/frc971/packages jessie main
+cat > /etc/apt/sources.list.d/llvm-apt.list <<EOT
+deb http://apt.llvm.org/jessie/ llvm-toolchain-jessie main
+deb-src http://apt.llvm.org/jessie/ llvm-toolchain-jessie main
EOT
# Enable user namespace for sandboxing.
@@ -46,19 +44,19 @@
kernel.unprivileged_userns_clone = 1
EOT
-# We need to explicitly pull in the java certificates from backports. Otherwise
-# bazel won't install properly.
-cat > /etc/apt/preferences.d/java_certificates <<EOT
-Package: ca-certificates-java
-Pin: release a=jessie-backports
-Pin-Priority: 900
-EOT
-
# Accept the LLVM GPG key so we can install their packages.
wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | apt-key add -
# Install all the packages that we need/want.
apt-get update
for pkg in "${PKGS[@]}"; do
- apt-get install -y -f --force-yes "$pkg"
+ apt-get install -y -f --allow-change-held-packages "$pkg"
done
+
+# Install bazel if necessary.
+if ! dpkg -l bazel > /dev/null; then
+ pushd /tmp
+ curl -OL 'https://github.com/bazelbuild/bazel/releases/download/0.8.1/bazel_0.8.1-linux-x86_64.deb'
+ dpkg -i bazel_0.8.1-linux-x86_64.deb
+ popd
+fi