blob: 1931149330cb2bf28443251e34570b0dec7959f9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#!/usr/bin/env bash
set -euxo pipefail
_usage="
usage: ./build_nvidia.sh nvidia_driver_version
"
if [ $# -lt 1 ]; then
echo "$_usage"
exit 1
fi
NVIDIA_VERSION="$1"
release="$(rpm -E '%fedora.%_arch')"
rpm-ostree install \
akmod-nvidia-"$NVIDIA_VERSION"* \
xorg-x11-drv-nvidia-{cuda,power}-"$NVIDIA_VERSION"* \
# Either successfully build and install the kernel modules, or fail early with debug output
kernel_version="$(rpm -q kernel --queryformat '%{VERSION}-%{RELEASE}.%{ARCH}')"
akmod_version="$(basename "$(rpm -q akmod-nvidia --queryformat '%{VERSION}-%{RELEASE}')" ".fc${release%%.*}")"
akmods --force --kernels "$kernel_version" --kmod nvidia
if ! modinfo /usr/lib/modules/"$kernel_version"/extra/nvidia/nvidia{,-drm,-modeset,-peermem,-uvm}.ko.xz &> /dev/null; then
cat /var/cache/akmods/nvidia/"$akmod_version"-for-"$kernel_version".failed.log && exit 1
fi
|