+# TODO
+# - solve this (shouldn't there be some obsoletes?):
+# error: xorg-driver-video-nvidia-169.12-3.i686 (cnfl Mesa-libGL) conflicts with installed Mesa-libGL-7.0.3-2.i686
+# error: xorg-driver-video-nvidia-169.12-3.i686 (cnfl Mesa-libGL) conflicts with installed Mesa-libGL-7.0.3-2.i686
#
# Conditional build:
%bcond_without dist_kernel # without distribution kernel
%bcond_with multigl # package libGL and libglx.so in a way allowing concurrent install with nvidia/fglrx drivers
%bcond_with verbose # verbose build (V=1)
-%define no_install_post_strip 1
-
%if "%{_alt_kernel}" != "%{nil}"
%undefine with_userspace
%endif
+%if %{without userspace}
+# nothing to be placed to debuginfo package
+%define _enable_debug_packages 0
+%endif
%define pname xorg-driver-video-nvidia
-%define rel 2
+%define rel 4
Summary: Linux Drivers for nVidia GeForce/Quadro Chips
Summary(pl.UTF-8): Sterowniki do kart graficznych nVidia GeForce/Quadro
Name: %{pname}%{_alt_kernel}
-Version: 169.07
+Version: 177.80
Release: %{rel}%{?with_multigl:.mgl}
License: nVidia Binary
Group: X11
Source0: http://us.download.nvidia.com/XFree86/Linux-x86/%{version}/NVIDIA-Linux-x86-%{version}-pkg1.run
-# Source0-md5: c4e9374dc4e7ce1a84dbfe25a800188a
+# Source0-md5: 8fb8ba17b3a67683a7d05bce3f1d6d71
Source1: http://us.download.nvidia.com/XFree86/Linux-x86_64/%{version}/NVIDIA-Linux-x86_64-%{version}-pkg2.run
-# Source1-md5: 7011bafddac098c5792b7fa73e86d610
+# Source1-md5: d88720c6c4c8f1d1155b33e5c39bdbc4
Source2: %{pname}-xinitrc.sh
Patch0: X11-driver-nvidia-GL.patch
Patch1: X11-driver-nvidia-desktop.patch
BuildRequires: sed >= 4.0
BuildConflicts: XFree86-nvidia
Requires: xorg-xserver-server
-Requires: xorg-xserver-server(videodrv-abi) = 2.0
+Requires: xorg-xserver-server(videodrv-abi) >= 2.0
+Requires: xorg-xserver-server(videodrv-abi) <= 4.1
Provides: OpenGL = 2.1
Provides: OpenGL-GLX = 1.4
Provides: xorg-xserver-libglx
-%if !%{with multigl}
+%if %{without multigl}
Obsoletes: Mesa
%endif
Obsoletes: X11-OpenGL-core < 1:7.0.0
Obsoletes: XFree86-OpenGL-libGL < 1:7.0.0
Obsoletes: XFree86-driver-nvidia
Obsoletes: XFree86-nvidia
-%if !%{with multigl}
+%if %{without multigl}
Conflicts: Mesa-libGL
%endif
Conflicts: XFree86-OpenGL-devel <= 4.2.0-3
Summary(pl.UTF-8): Narzędzia do zarządzania kartami graficznymi nVidia
Group: Applications/System
Requires: %{name} = %{version}-%{release}
+Suggests: pkgconfig
Obsoletes: XFree86-driver-nvidia-progs
%description progs
Summary: nVidia kernel module for nVidia Architecture support
Summary(de.UTF-8): Das nVidia-Kern-Modul für die nVidia-Architektur-Unterstützung
Summary(pl.UTF-8): Moduł jądra dla obsługi kart graficznych nVidia
-Version: %{version}
Release: %{rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
Requires: dev >= 2.7.7-10
%{?with_dist_kernel:%requires_releq_kernel}
+Requires: %{pname} = %{version}-%{rel}
Provides: X11-driver-nvidia(kernel)
Obsoletes: XFree86-nvidia-kernel
%build
%if %{with kernel}
-cd usr/src/nv/
+cd usr/src/nv
ln -sf Makefile.kbuild Makefile
cat >> Makefile <<'EOF'
usr/lib/libnvidia-cfg.so.%{version} \
usr/lib/libGL{,core}.so.%{version} \
usr/X11R6/lib/libXvMCNVIDIA.so.%{version} \
-%if !%{with multigl}
+%if %{without multigl}
usr/X11R6/lib/libXvMCNVIDIA.a \
; do
install $f $RPM_BUILD_ROOT%{_libdir}
install usr/include/GL/*.h $RPM_BUILD_ROOT%{_includedir}/GL
ln -sf libglx.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/libglx.so
-ln -sf libnvidia-wfb.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/wfb.so
%if %{with multigl}
echo %{_libdir}/nvidia >$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia.conf
%post
/sbin/ldconfig
-cat << EOF
-NOTE: You must install:
-kernel-video-nvidia-%{version}
-for this driver to work
+cat << 'EOF'
+NOTE: You must also install kernel module for this driver to work
+ kernel-video-nvidia-%{version}
+ kernel-desktop-video-nvidia-%{version}
+ kernel-laptop-video-nvidia-%{version}
+ kernel-vanilla-video-nvidia-%{version}
+
+Depending on which kernel brand you use.
+
EOF
%if %{with multigl}
if [ ! -e %{_libdir}/xorg/modules/extensions/libglx.so ]; then
%attr(755,root,root) %{_libdir}/nvidia/libGLcore.so.*.*
%attr(755,root,root) %{_libdir}/nvidia/libXvMCNVIDIA.so.*.*
%attr(755,root,root) %{_libdir}/nvidia/libXvMCNVIDIA_dynamic.so.1
-%attr(755,root,root) %{_libdir}/nvidia/libnvidia-cfg.so.*.*.*
-%attr(755,root,root) %{_libdir}/nvidia/libnvidia-tls.so.*.*.*
+%attr(755,root,root) %{_libdir}/nvidia/libnvidia-cfg.so.*.*
+%attr(755,root,root) %{_libdir}/nvidia/libnvidia-tls.so.*.*
%attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so.*
%ghost %{_libdir}/xorg/modules/extensions/libglx.so
%else
%attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so*
%endif
%attr(755,root,root) %{_libdir}/xorg/modules/libnvidia-wfb.so.*.*
-%attr(755,root,root) %{_libdir}/xorg/modules/wfb.so
%attr(755,root,root) %{_libdir}/xorg/modules/drivers/nvidia_drv.so
%files devel