Packaging templates for yum and dnf based Linux distros to build NVIDIA settings packages.
The main branch contains this README. The .spec and .patch files can be found in the appropriate rhel7, rhel8, and fedora branches.
This repo contains the .spec file used to build the following RPM packages:
note:
XXXis the first.delimited field in the driver version, ex:460in460.32.03
- RHEL8 or Fedora streams:
XXX,XXX-dkms,latest, andlatest-dkms
- nvidia-libXNVCtrl
- nvidia-libXNVCtrl-devel
- nvidia-settingsFor RHEL7 and derivatives, there are three sets or flavors of packages with different package dependencies. However, that does not apply to the packages in this repository.
- RHEL7 flavor:
branch-XXX,latest, andlatest-dkms
- nvidia-libXNVCtrl
- nvidia-libXNVCtrl-devel
- nvidia-settingsSupported branches: rhel7, rhel8 & fedora
git clone -b ${branch} https://github.com/NVIDIA/yum-packaging-nvidia-settings
> ex: git clone -b rhel8 https://github.com/NVIDIA/yum-packaging-nvidia-settings-
Source code location: https://github.com/NVIDIA/nvidia-settings/releases
ex: https://github.com/NVIDIA/nvidia-settings/archive/460.32.03.tar.gz
ex: https://github.com/NVIDIA/nvidia-settings/archive/460.56.tar.gz
# Basics
yum install gcc m4
# Compiling UI
yum install gtk2-devel gtk3-devel libappstream-glib
# X.org utilties
yum install libXext-devel libXrandr-devel
# GLVND
yum install mesa-libGL-devel mesa-libEGL-devel
# Video extensions
yum install libXxf86vm-devel libXv-devel libvdpau-devel
# Misc
yum install jansson-devel dbus-devel desktop-file-utils
# Packaging
yum install rpm-buildcd yum-packaging-nvidia-persistenced
git checkout remotes/origin/main -- build.sh./build.sh [$version | path/to/*.tar.{gz,bz2} | path/to/*.run]
> ex: time ./build.sh 460.32.03
> ex: time ./build.sh ~/Downloads/nvidia-settings-450.102.04.tar.bz2
> ex: time ./build.sh ~/Downloads/nvidia-settings-460.32.03.tar.gz
> ex: time ./build.sh ~/Downloads/NVIDIA-Linux-x86_64-450.102.04.runnote: runfile is only used to determine version
mkdir BUILD BUILDROOT RPMS SRPMS SOURCES SPECS
cp *.desktop SOURCES/
cp *.patch SOURCES/
cp *.xml SOURCES/
cp nvidia-settings-${version}.tar.gz SOURCES/
cp nvidia-settings.spec SPECS/
rpmbuild \
--define "%_topdir $(pwd)" \
--define "debug_package %{nil}" \
--define "version $version" \
--define "epoch 3" \
--define "extension gz" \
-v -bb SPECS/nvidia-settings.specnote: this package is not branched, therefore regardless of flavor, the highest version installed by default.
- nvidia-driver
- nvidia-modprobe
- nvidia-persistenced
- dnf-plugin-nvidia & yum-plugin-nvidia
- Precompiled kernel modules
- nvidia-xconfig
See CONTRIBUTING.md