3 %bcond_without dist_kernel # allow non-distribution kernel
4 %bcond_without kernel # don't build kernel modules
5 %bcond_with verbose # verbose build (V=1)
6 %bcond_with dkms # build dkms package
8 # nothing to be placed to debuginfo package
9 %define _enable_debug_packages 0
12 %define modname nvidiabl
13 Summary: Linux driver for nVidia display back-lights
14 Name: %{modname}%{_alt_kernel}
18 URL: https://github.com/guillaumezin/nvidiabl
19 Source0: https://github.com/guillaumezin/nvidiabl/archive/v%{version}.tar.gz?/%{modname}-%{version}.tgz
20 # Source0-md5: f72d90c0fe34b36a0ff3b6d7034e99c4
21 Patch0: nvidiabl-dkmsconf.patch
23 %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20.2}
24 BuildRequires: rpmbuild(macros) >= 1.379
25 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
28 This driver drives the smartdimmer register found on modern mobile
29 nVidia graphics adapters such as NV40, NV41, NV43, NV44, NV46, NV47,
30 NV49, NV4B, C51, G84, G86, G92, G94, G96, GT200 architectures to
31 adjust the display backlight.
33 On Apple machines this driver allows more fine-grained brightness
34 adjustment than the (mbp_nvidia_bl) driver and is generally preferred.
36 %package -n dkms-%{modname}
37 Summary: DKMS-ready driver for nVidia display back-lights
42 %if "%{_rpmversion}" >= "5"
46 %description -n dkms-%{modname}
47 This package contains a DKMS-ready driver for nvidia laptop display
50 This driver drives the smartdimmer register found on modern mobile
51 Nvidia graphics adapters such as NV40, NV41, NV43, NV44, NV46, NV47,
52 NV49, NV4B, C51, G84, G86, G92, G94, G96, GT200 architectures to
53 adjust the display backlight.
55 On Apple machines this driver allows more fine-grained brightness
56 adjustment than the mbp-nvidia-bl-dkms (mbp_nvidia_bl) driver and is
60 %package -n kernel%{_alt_kernel}-video-nvidiabl
61 Summary: Linux driver for nVidia display back-lights
62 Summary(pl.UTF-8): Sterownik dla Linuksa do nvidiabl
63 Release: %{rel}@%{_kernel_ver_str}
65 Requires(post,postun): /sbin/depmod
66 %if %{with dist_kernel}
67 %requires_releq_kernel
68 Requires(postun): %releq_kernel
71 %description -n kernel%{_alt_kernel}-video-nvidiabl
72 This driver drives the smartdimmer register found on modern mobile
73 nVidia graphics adapters such as NV40, NV41, NV43, NV44, NV46, NV47,
74 NV49, NV4B, C51, G84, G86, G92, G94, G96, GT200 architectures to
75 adjust the display backlight.
77 On Apple machines this driver allows more fine-grained brightness
78 adjustment than the (mbp_nvidia_bl) driver and is generally preferred.
80 %description -n kernel%{_alt_kernel}-video-nvidiabl -l pl.UTF-8
81 Sterownik dla Linuksa do nvidiabl.
83 Ten pakiet zawiera moduł jądra Linuksa.
86 %setup -qn %{modname}-%{version}
91 %build_kernel_modules -m nvidiabl
95 rm -rf $RPM_BUILD_ROOT
97 %install_kernel_modules -m nvidiabl -d misc
101 install -d $RPM_BUILD_ROOT%{_usrsrc}/%{modname}-%{version}-%{rel}
102 cp -a Makefile *.[ch] $RPM_BUILD_ROOT%{_usrsrc}/%{modname}-%{version}-%{rel}
103 sed -e 's|@MODNAME@|%{modname}|g' -e 's|@MODVERSION@|%{version}-%{rel}|g' \
104 dkms.conf > $RPM_BUILD_ROOT%{_usrsrc}/%{modname}-%{version}-%{rel}/dkms.conf
108 rm -rf $RPM_BUILD_ROOT
110 %post -n dkms-%{modname}
111 %{_sbindir}/dkms add -m %{modname} -v %{version}-%{rel} --rpm_safe_upgrade && \
112 %{_sbindir}/dkms build -m %{modname} -v %{version}-%{rel} --rpm_safe_upgrade && \
113 %{_sbindir}/dkms install -m %{modname} -v %{version}-%{rel} --rpm_safe_upgrade || :
115 %preun -n dkms-%{modname}
116 %{_sbindir}/dkms remove -m %{modname} -v %{version}-%{rel} --rpm_safe_upgrade --all || :
118 %post -n kernel%{_alt_kernel}-video-nvidiabl
119 %depmod %{_kernel_ver}
121 %postun -n kernel%{_alt_kernel}-video-nvidiabl
122 %depmod %{_kernel_ver}
125 %files -n dkms-%{modname}
126 %defattr(644,root,root,755)
127 %{_usrsrc}/%{modname}-%{version}-%{rel}
131 %files -n kernel%{_alt_kernel}-video-nvidiabl
132 %defattr(644,root,root,755)
133 /lib/modules/%{_kernel_ver}/misc/*.ko*