Files
ansible-collection-infrastr…/roles/nvidia_drivers
patrick b212092db1 fix(nvidia_drivers): guard driver info display against skipped verify
Check nvidia_verification.rc is defined instead of the var, since a skipped
task still registers a dict without rc. Fall back to nvidia_check output so
driver info shows on every successful run.
2026-07-27 15:48:57 -04:00
..

NVIDIA Drivers Role

Installs NVIDIA drivers and CUDA runtime on Debian/Ubuntu systems with proper idempotency and error handling.

Features

  • Automatic OS detection (Debian/Ubuntu)
  • Idempotent repository management
  • Support for both proprietary and open-source drivers
  • Post-installation verification
  • Automatic cleanup on failures
  • Architecture detection (x86_64/arm64)

Variables

Variable Default Description
nvidia_install_kernel_modules false Install kernel modules (full drivers) vs userspace only
nvidia_open_source_drivers false Use open-source nvidia-open instead of proprietary drivers
nvidia_cuda_runtime_version "13-1" CUDA runtime version to install
nvidia_optional_packages [] Additional NVIDIA packages to install
kernel_module_type linux Kernel module type (linux/linux-image)

Usage

Full Driver Installation (with kernel modules)

- name: Install NVIDIA drivers with kernel modules
  include_role:
    name: nvidia_drivers
  vars:
    nvidia_install_kernel_modules: true
    nvidia_open_source_drivers: false

Userspace Only (containers/existing drivers)

- name: Install NVIDIA userspace libraries
  include_role:
    name: nvidia_drivers
  vars:
    nvidia_install_kernel_modules: false

With Optional Packages

- name: Install NVIDIA with extras
  include_role:
    name: nvidia_drivers
  vars:
    nvidia_install_kernel_modules: true
    nvidia_optional_packages:
      - nvidia-settings
      - nvidia-modprobe

Requirements

  • Debian 11+ or Ubuntu 20.04+
  • Root privileges
  • Internet connectivity

Notes

  • Role is idempotent - safe to run multiple times
  • Automatically detects if drivers are already installed
  • Cleans up on installation failures
  • Supports both x86_64 and arm64 architectures