@ -198,19 +198,29 @@ if check_gpu lspci amdgpu || check_gpu lshw amdgpu; then
exit 0
fi
CUDA_REPO_ERR_MSG = "NVIDIA GPU detected, but your OS and Architecture are not supported by NVIDIA. Please install the CUDA driver manually https://docs.nvidia.com/cuda/cuda-installation-guide-linux/"
# ref: https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#rhel-7-centos-7
# ref: https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#rhel-8-rocky-8
# ref: https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#rhel-9-rocky-9
# ref: https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#fedora
install_cuda_driver_yum( ) {
status 'Installing NVIDIA repository...'
case $PACKAGE_MANAGER in
yum)
$SUDO $PACKAGE_MANAGER -y install yum-utils
$SUDO $PACKAGE_MANAGER -config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/$1 $2 /$( uname -m) /cuda-$1 $2 .repo
if curl -I --silent --fail --location " https://developer.download.nvidia.com/compute/cuda/repos/ $1 $2 / $( uname -m) /cuda- $1 $2 .repo " >/dev/null ; then
$SUDO $PACKAGE_MANAGER -config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/$1 $2 /$( uname -m) /cuda-$1 $2 .repo
else
error $CUDA_REPO_ERR_MSG
fi
; ;
dnf)
$SUDO $PACKAGE_MANAGER config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/$1 $2 /$( uname -m) /cuda-$1 $2 .repo
if curl -I --silent --fail --location " https://developer.download.nvidia.com/compute/cuda/repos/ $1 $2 / $( uname -m) /cuda- $1 $2 .repo " >/dev/null ; then
$SUDO $PACKAGE_MANAGER config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/$1 $2 /$( uname -m) /cuda-$1 $2 .repo
else
error $CUDA_REPO_ERR_MSG
fi
; ;
esac
@ -235,7 +245,11 @@ install_cuda_driver_yum() {
# ref: https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#debian
install_cuda_driver_apt( ) {
status 'Installing NVIDIA repository...'
curl -fsSL -o $TEMP_DIR /cuda-keyring.deb https://developer.download.nvidia.com/compute/cuda/repos/$1 $2 /$( uname -m) /cuda-keyring_1.1-1_all.deb
if curl -I --silent --fail --location " https://developer.download.nvidia.com/compute/cuda/repos/ $1 $2 / $( uname -m) /cuda-keyring_1.1-1_all.deb " >/dev/null ; then
curl -fsSL -o $TEMP_DIR /cuda-keyring.deb https://developer.download.nvidia.com/compute/cuda/repos/$1 $2 /$( uname -m) /cuda-keyring_1.1-1_all.deb
else
error $CUDA_REPO_ERR_MSG
fi
case $1 in
debian)