|
1 | 1 | #!/bin/bash |
2 | 2 | # SPDX-License-Identifier: Apache-2.0 |
3 | | -# Copyright (c) 2023 United Kingdom Research and Innovation |
| 3 | +# Copyright (c) 2026 United Kingdom Research and Innovation |
4 | 4 | set -ex |
5 | 5 |
|
6 | | -sudo dnf update -y |
| 6 | +DRIVER_VER="590" |
| 7 | +OS_NAME=$(awk -F= '/^NAME=/{gsub("\"","",$2); print $2}' /etc/os-release) |
7 | 8 |
|
8 | | -# # Nvidia drivers - centos8 |
9 | | -echo 'blacklist nouveau |
10 | | -options nouveau modeset=0' > /usr/lib/modprobe.d/blacklist-nouveau.conf |
11 | | -echo "Updating dracut" |
12 | | -sudo dracut --force |
13 | | -(lsmod | grep -wq nouveau && echo "Rebooting to disable nouveau" && sudo reboot) || true |
| 9 | +case "$OS_NAME" in |
| 10 | + "Ubuntu"*) |
| 11 | + sudo apt update -y |
| 12 | + sudo apt install nvidia-driver-"$DRIVER_VER" -y |
| 13 | + ;; |
14 | 14 |
|
15 | | -sudo dnf install tar bzip2 make automake gcc gcc-c++ pciutils elfutils-libelf-devel libglvnd-devel -y |
16 | | -sudo dnf install -y kernel-devel kernel-headers -y |
| 15 | +"Rocky Linux"*) |
| 16 | + sudo dnf update -y |
17 | 17 |
|
18 | | -VERSION=$(awk -F= '/^VERSION_ID=/ {gsub("\"","",$2); print $2}' /etc/os-release 2>/dev/null || true) |
| 18 | + echo 'blacklist nouveau |
| 19 | + options nouveau modeset=0' > /usr/lib/modprobe.d/blacklist-nouveau.conf |
| 20 | + echo "Updating dracut" |
| 21 | + sudo dracut --force |
| 22 | + (lsmod | grep -wq nouveau && echo "Rebooting to disable nouveau" && sudo reboot) || true |
19 | 23 |
|
20 | | -sudo dnf config-manager --add-repo http://developer.download.nvidia.com/compute/cuda/repos/rhel"${VERSION%%.*}"/"$(uname -m)"/cuda-rhel"${VERSION%%.*}".repo |
21 | | -sudo dnf install nvidia-driver-assistant -y |
| 24 | + sudo dnf install tar bzip2 make automake gcc gcc-c++ pciutils elfutils-libelf-devel libglvnd-devel -y |
| 25 | + sudo dnf install -y kernel-devel kernel-headers -y |
22 | 26 |
|
23 | | -nvidia-smi || nvidia-driver-assistant --install --branch 590 --module-flavor closed |
| 27 | + VERSION=$(awk -F= '/^VERSION_ID=/ {gsub("\"","",$2); print $2}' /etc/os-release 2>/dev/null || true) |
| 28 | + |
| 29 | + sudo dnf config-manager --add-repo http://developer.download.nvidia.com/compute/cuda/repos/rhel"${VERSION%%.*}"/"$(uname -m)"/cuda-rhel"${VERSION%%.*}".repo |
| 30 | + sudo dnf install nvidia-driver-assistant -y |
| 31 | + nvidia-smi || nvidia-driver-assistant --install --branch "$DRIVER_VER" --module-flavor closed |
| 32 | + ;; |
| 33 | + *) |
| 34 | + echo "Please run on a Rocky or Ubuntu system" >&2 |
| 35 | + exit 1 |
| 36 | + ;; |
| 37 | +esac |
24 | 38 | (echo "Rebooting machine to load Nvidia Driver" && sudo reboot) |
0 commit comments