]>
Commit | Line | Data |
---|---|---|
1e59de90 TL |
1 | #!/bin/bash |
2 | # Copyright (c) Microsoft Corporation. | |
3 | # SPDX-License-Identifier: MIT | |
4 | # | |
5 | ||
6 | sudo apt -y update | |
7 | sudo apt -y dist-upgrade | |
8 | # Install common build dependencies | |
9 | APT_PACKAGES="at curl unzip tar libxt-dev gperf libxaw7-dev cifs-utils \ | |
10 | build-essential g++ gfortran zip libx11-dev libxkbcommon-x11-dev libxi-dev \ | |
11 | libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev libxinerama-dev \ | |
12 | libxcursor-dev yasm libnuma1 libnuma-dev python-six python3-six python-yaml \ | |
13 | flex libbison-dev autoconf libudev-dev libncurses5-dev libtool libxrandr-dev \ | |
14 | xutils-dev dh-autoreconf autoconf-archive libgles2-mesa-dev ruby-full \ | |
15 | pkg-config meson" | |
16 | ||
17 | # Additionally required by qt5-base | |
18 | APT_PACKAGES="$APT_PACKAGES libxext-dev libxfixes-dev libxrender-dev \ | |
19 | libxcb1-dev libx11-xcb-dev libxcb-glx0-dev libxcb-util0-dev" | |
20 | ||
21 | # Additionally required by qt5-base for qt5-x11extras | |
22 | APT_PACKAGES="$APT_PACKAGES libxkbcommon-dev libxcb-keysyms1-dev \ | |
23 | libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync0-dev \ | |
24 | libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev \ | |
25 | libxcb-render-util0-dev libxcb-xinerama0-dev libxcb-xkb-dev libxcb-xinput-dev" | |
26 | ||
27 | # Additionally required by libhdfs3 | |
28 | APT_PACKAGES="$APT_PACKAGES libkrb5-dev" | |
29 | ||
30 | # Additionally required by kf5windowsystem | |
31 | APT_PACKAGES="$APT_PACKAGES libxcb-res0-dev" | |
32 | ||
33 | # Additionally required by mesa | |
34 | APT_PACKAGES="$APT_PACKAGES python3-setuptools python3-mako" | |
35 | ||
36 | # Additionally required by some packages to install additional python packages | |
37 | APT_PACKAGES="$APT_PACKAGES python3-pip" | |
38 | ||
39 | # Additionally required by rtaudio | |
40 | APT_PACKAGES="$APT_PACKAGES libasound2-dev" | |
41 | ||
42 | # Additionally required/installed by Azure DevOps Scale Set Agents | |
43 | APT_PACKAGES="$APT_PACKAGES liblttng-ust0 libkrb5-3 zlib1g libicu60" | |
44 | ||
45 | sudo apt -y install $APT_PACKAGES | |
46 | ||
47 | # Install newer version of nasm than the apt package, required by intel-ipsec | |
48 | mkdir /tmp/nasm | |
49 | cd /tmp/nasm | |
50 | curl -O https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.gz | |
51 | tar -xf nasm-2.15.05.tar.gz | |
52 | cd nasm-2.15.05/ | |
53 | ./configure --prefix=/usr && make -j | |
54 | sudo make install | |
55 | cd ~ | |
56 | ||
57 | # Install the latest Haskell stack | |
58 | curl -sSL https://get.haskellstack.org/ | sudo sh | |
59 | ||
60 | # Install CUDA | |
61 | wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin | |
62 | sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600 | |
63 | sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub | |
64 | sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ /" | |
65 | sudo apt -y update | |
66 | sudo apt install -y --no-install-recommends cuda-compiler-11-3 cuda-libraries-dev-11-3 cuda-driver-dev-11-3 \ | |
67 | cuda-cudart-dev-11-3 libcublas-11-3 libcurand-dev-11-3 libcudnn8-dev libnccl2 libnccl-dev | |
68 | ||
69 | # Install PowerShell | |
70 | wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb | |
71 | sudo dpkg -i packages-microsoft-prod.deb | |
72 | sudo apt update | |
73 | sudo add-apt-repository universe | |
74 | sudo apt install -y powershell | |
75 | ||
76 | # provision-image.ps1 will append installation of the SAS token here |