2 # - add desktop file for toolbox
3 # - separate hpijs package?
6 %bcond_without dbus # build dbus
7 %bcond_without fax # build fax, depends on dbus
13 Summary: Hewlett-Packard Linux Imaging and Printing suite - printing and scanning using HP devices
14 Summary(pl.UTF-8): Narzędzia Hewlett-Packard Linux Imaging and Printing - drukowanie i skanowanie przy użyciu urządzeń HP
18 License: BSD (hpijs), MIT (low-level scanning and printing code), GPL v2 (the rest)
19 Group: Applications/System
20 Source0: http://downloads.sourceforge.net/hplip/%{name}-%{version}.tar.gz
21 # Source0-md5: 3f50c45c52b2adaee8d9ff32db8c4e6e
22 Patch0: %{name}-desktop.patch
23 Patch1: unresolved.patch
24 Patch2: pld-distro.patch
25 # note: this patch adds support to fixing only certain binary plugins. Newer plugin
26 # version have differend md5 sums, different offsets, so handling new binaries need
28 Patch3: %{name}-binary-fixup.patch
29 Patch5: %{name}-udev-rules.patch
30 URL: http://hplipopensource.com/
31 BuildRequires: autoconf
32 BuildRequires: automake
33 BuildRequires: cups-devel >= 1.2
34 %{?with_dbus:BuildRequires: dbus-devel >= 1.0.0}
35 BuildRequires: libjpeg-devel
36 BuildRequires: libstdc++-devel
37 BuildRequires: libtiff-devel
38 BuildRequires: libtool
39 BuildRequires: libusb-devel >= 1.0
40 BuildRequires: net-snmp-devel
41 BuildRequires: openssl-devel
42 BuildRequires: pkgconfig
43 BuildRequires: python-devel >= 2.2
44 BuildRequires: python-modules >= 2.2
45 BuildRequires: rpm-pythonprov
46 BuildRequires: sane-backends-devel
47 BuildRequires: sed >= 4.0
48 Requires: %{name}-libs = %{version}-%{release}
49 Requires: python-modules
52 Obsoletes: hplip-daemon
53 Obsoletes: python-hplip
54 Conflicts: ghostscript <= 7.00-3
56 Suggests: python-ReportLab >= 2.0
57 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
59 %define _ulibdir %{_prefix}/lib
61 %define cups_datadir %(cups-config --datadir 2>/dev/null || echo ERROR)
62 %define cups_mimedir %{cups_datadir}/mime
63 %define cups_ppddir %{cups_datadir}/model
64 %define cups_serverdir %(cups-config --serverbin 2>/dev/null || echo ERROR)
65 %define cups_backenddir %{cups_serverdir}/backend
66 %define cups_filterdir %{cups_serverdir}/filter
69 The Hewlett-Packard Linux Imaging and Printing project (HPLIP)
70 provides a unified single and multi-function connectivity solution for
71 Linux. The goal of this project is to provide "radically simple"
72 printing, faxing, scanning, photo-card access, and device management
73 to the consumer and small business desktop Linux users.
75 %description -l pl.UTF-8
76 Projekt Hewlett-Packard Linux Imaging and Printing (HPLIP) udostępnia
77 jednolite, wielofunkcyjne rozwiązanie dla Linuksa. Celem tego projektu
78 jest zapewnienie "radykalnie prostego" drukowania, faksowania,
79 skanowania, dostępu do kart fotograficznych oraz zarządzania
80 urządzeniami końcowym użytkownikom Linuksa.
83 Summary: HPLIP GUI tools
84 Summary(pl.UTF-8): Narzędzia HPLIP z graficznym interfejsem użytkownika
85 Group: Applications/System
86 Requires: %{name} = %{version}-%{release}
87 Requires: python-PyQt4
89 %description gui-tools
92 %description gui-tools -l pl.UTF-8
93 Narzędzia HPLIP z graficznym interfejsem użytkownika.
96 Summary: HPLIP Libraries
97 Summary(pl.UTF-8): Biblioteki HPLIP
103 %description libs -l pl.UTF-8
107 Summary: HPLIP driver for SANE (scanner access)
108 Summary(pl.UTF-8): Sterownik HPLIP dla SANE (dostęp do skanera)
110 Requires(post): /bin/grep
111 Requires(postun): /bin/sed
112 Requires: %{name} = %{version}-%{release}
115 HPLIP driver for SANE (provides scanner access).
117 %description sane -l pl.UTF-8
118 Sterownik HPLIP dla SANE (umożliwia dostęp do skanera).
121 Summary: PPD database for Hewlett Packard printers
122 Summary(pl.UTF-8): Baza danych PPD dla drukarek Hewlett Packard
123 Group: Applications/System
125 Requires: cups-filters >= 1.0.43
127 %if "%{_rpmversion}" >= "5"
132 PPD database for Hewlett Packard printers.
134 %description ppd -l pl.UTF-8
135 Baza danych PPD dla drukarek Hewlett Packard.
137 %package -n cups-backend-hp
138 Summary: HP backend for CUPS
139 Summary(pl.UTF-8): Backend HP dla CUPS-a
140 Group: Applications/Printing
141 Requires: %{name} = %{version}-%{release}
143 Requires: cups-filters >= 1.0.43
145 %description -n cups-backend-hp
146 This package allows CUPS printing on HP printers.
148 %description -n cups-backend-hp -l pl.UTF-8
149 Ten pakiet umożliwia drukowanie z poziomu CUPS-a na drukarkach HP.
151 %package -n cups-backend-hpfax
152 Summary: HP fax backend for CUPS
153 Summary(pl.UTF-8): Backend HP fax dla CUPS-a
154 Group: Applications/Printing
155 Requires: %{name} = %{version}-%{release}
158 %description -n cups-backend-hpfax
159 This package allow CUPS faxing using HP AiO devices.
161 %description -n cups-backend-hpfax -l pl.UTF-8
162 Ten pakiet umożliwia wysyłanie faksów z poziomu CUPS-a poprzez
174 %{__sed} -i -e '1s,^#!/usr/bin/env python$,#!%{__python},' *.py fax/filters/pstotiff prnt/filters/hpps
175 find base fax installer prnt scan ui ui4 -name '*.py' | xargs \
176 %{__sed} -i -e '1s,^#!/usr/bin/env python$,#!%{__python},'
177 %{__sed} -i -e 's#test -d /usr/share/polkit-1#true#' configure.in
184 CXXFLAGS="%{rpmcflags} -fno-exceptions -fno-rtti"
186 %{!?with_dbus:--disable-dbus-build} \
187 %{!?with_fax:--disable-fax-build} \
188 --enable-cups-drv-install \
189 --enable-cups-ppd-install \
190 --enable-foomatic-drv-install \
191 --enable-foomatic-ppd-install \
192 --disable-foomatic-rip-hplip-install \
193 --enable-hpcups-install \
194 --enable-hpijs-install \
197 --with-cupsbackenddir=%{cups_backenddir} \
198 --with-cupsfilterdir=%{cups_filterdir} \
199 --with-hpppddir=%{cups_ppddir} \
200 --with-mimedir=%{_datadir}/cups/mime
204 rm -rf $RPM_BUILD_ROOT
205 install -d $RPM_BUILD_ROOT/var/lib/hp
207 %{__make} -j1 install \
208 DESTDIR=$RPM_BUILD_ROOT
210 touch $RPM_BUILD_ROOT/var/lib/hp/hplip.state
212 for tool in align clean colorcal fab firmware info levels makecopies makeuri print \
213 probe scan sendfax setup testpage timedate toolbox unload ; do
214 ln -sf %{_datadir}/%{name}/$tool.py $RPM_BUILD_ROOT%{_bindir}/hp-$tool
217 # use filter from cups-filters package, the perl script from hplip does not work
218 # correctly with cups 1.7.x, and is an unnecessary functional duplicate
219 ln -s %{cups_filterdir}/foomatic-rip $RPM_BUILD_ROOT%{cups_filterdir}/foomatic-rip-hplip
221 # useless (nothing is going to link to installed libraries/modules)
222 %{__rm} $RPM_BUILD_ROOT{%{_libdir}/*.{so,la},%{_libdir}/sane/*.{so,la},%{py_sitedir}/*.la}
223 # handled by post script
224 %{__rm} $RPM_BUILD_ROOT/etc/sane.d/dll.conf
226 %{__rm} $RPM_BUILD_ROOT{%{_bindir}/hp-{uninstall,upgrade},%{_datadir}/hplip/{uninstall,upgrade}.py}
227 %{__rm} $RPM_BUILD_ROOT/usr/lib/systemd/system/hplip-printer@.service
230 %{__rm} $RPM_BUILD_ROOT%{cups_filterdir}/pstotiff
233 # use udev, hal's dead
234 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/hal
236 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
239 rm -rf $RPM_BUILD_ROOT
241 %post libs -p /sbin/ldconfig
242 %postun libs -p /sbin/ldconfig
245 /bin/grep -q '^hpaio' /etc/sane.d/dll.conf || echo hpaio >> /etc/sane.d/dll.conf
248 if [ "$1" = "0" ]; then
249 /bin/sed -e'/^hpaio/d' -i /etc/sane.d/dll.conf || :
253 %defattr(644,root,root,755)
255 %attr(755,root,root) %{_bindir}/hpijs
256 %attr(755,root,root) %{_bindir}/hp-align
257 %attr(755,root,root) %{_bindir}/hp-check
258 %attr(755,root,root) %{_bindir}/hp-clean
259 %attr(755,root,root) %{_bindir}/hp-colorcal
260 %attr(755,root,root) %{_bindir}/hp-config_usb_printer
261 %attr(755,root,root) %{_bindir}/hp-diagnose_plugin
262 %attr(755,root,root) %{_bindir}/hp-diagnose_queues
263 %attr(755,root,root) %{_bindir}/hp-firmware
264 %attr(755,root,root) %{_bindir}/hp-doctor
265 %attr(755,root,root) %{_bindir}/hp-info
266 %attr(755,root,root) %{_bindir}/hp-levels
267 %attr(755,root,root) %{_bindir}/hp-logcapture
268 %attr(755,root,root) %{_bindir}/hp-makecopies
269 %attr(755,root,root) %{_bindir}/hp-makeuri
270 %attr(755,root,root) %{_bindir}/hp-pkservice
271 %attr(755,root,root) %{_bindir}/hp-plugin
272 %attr(755,root,root) %{_bindir}/hp-probe
273 %attr(755,root,root) %{_bindir}/hp-query
274 %attr(755,root,root) %{_bindir}/hp-scan
275 %attr(755,root,root) %{_bindir}/hp-sendfax
276 %attr(755,root,root) %{_bindir}/hp-setup
277 %attr(755,root,root) %{_bindir}/hp-testpage
278 %attr(755,root,root) %{_bindir}/hp-timedate
279 %attr(755,root,root) %{_bindir}/hp-unload
280 %dir %{_datadir}/hplip
281 %{_datadir}/hplip/__init__.py
282 %dir %{_datadir}/hplip/copier
283 %{_datadir}/hplip/copier/*.py
284 %attr(755,root,root) %{_datadir}/hplip/align.py
285 %attr(755,root,root) %{_datadir}/hplip/check.py
286 %attr(755,root,root) %{_datadir}/hplip/check-plugin.py
287 %attr(755,root,root) %{_datadir}/hplip/clean.py
288 %attr(755,root,root) %{_datadir}/hplip/colorcal.py
289 %attr(755,root,root) %{_datadir}/hplip/config_usb_printer.py
290 %attr(755,root,root) %{_datadir}/hplip/diagnose_plugin.py
291 %attr(755,root,root) %{_datadir}/hplip/diagnose_queues.py
292 %attr(755,root,root) %{_datadir}/hplip/doctor.py
293 %attr(755,root,root) %{_datadir}/hplip/firmware.py
294 %attr(755,root,root) %{_datadir}/hplip/hpdio.py
295 %attr(755,root,root) %{_datadir}/hplip/hplip_clean.sh
296 %attr(755,root,root) %{_datadir}/hplip/hpssd.py
297 %attr(755,root,root) %{_datadir}/hplip/info.py
298 %attr(755,root,root) %{_datadir}/hplip/levels.py
299 %attr(755,root,root) %{_datadir}/hplip/logcapture.py
300 %attr(755,root,root) %{_datadir}/hplip/makecopies.py
301 %attr(755,root,root) %{_datadir}/hplip/makeuri.py
302 %attr(755,root,root) %{_datadir}/hplip/pkservice.py
303 %attr(755,root,root) %{_datadir}/hplip/plugin.py
304 %attr(755,root,root) %{_datadir}/hplip/probe.py
305 %attr(755,root,root) %{_datadir}/hplip/query.py
306 %attr(755,root,root) %{_datadir}/hplip/scan.py
307 %attr(755,root,root) %{_datadir}/hplip/sendfax.py
308 %attr(755,root,root) %{_datadir}/hplip/setup.py
309 %attr(755,root,root) %{_datadir}/hplip/testpage.py
310 %attr(755,root,root) %{_datadir}/hplip/timedate.py
311 %attr(755,root,root) %{_datadir}/hplip/unload.py
312 %{_datadir}/hplip/base
313 %dir %{_datadir}/hplip/data
314 %{_datadir}/hplip/data/ldl
315 %{_datadir}/hplip/data/localization
316 %{_datadir}/hplip/data/models
317 %{_datadir}/hplip/data/pcl
318 %{_datadir}/hplip/data/ps
321 %{_datadir}/hplip/fax
323 %{_datadir}/hplip/installer
324 %{_datadir}/hplip/pcard
325 %{_datadir}/hplip/prnt
326 %{_datadir}/hplip/scan
327 %attr(755,root,root) %{py_sitedir}/cupsext.so
328 %attr(755,root,root) %{py_sitedir}/hpmudext.so
329 %attr(755,root,root) %{py_sitedir}/pcardext.so
330 %attr(755,root,root) %{py_sitedir}/scanext.so
331 %dir %{_sysconfdir}/hp
332 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/hp/hplip.conf
333 /lib/udev/rules.d/56-hpmud.rules
334 /etc/dbus-1/system.d/com.hp.hplip.conf
335 %{_datadir}/dbus-1/system-services/com.hp.hplip.service
336 %{_datadir}/polkit-1/actions/com.hp.hplip.policy
339 %defattr(644,root,root,755)
340 %attr(755,root,root) %{_bindir}/hp-devicesettings
341 %attr(755,root,root) %{_bindir}/hp-fab
342 %attr(755,root,root) %{_bindir}/hp-faxsetup
343 %attr(755,root,root) %{_bindir}/hp-linefeedcal
344 %attr(755,root,root) %{_bindir}/hp-pqdiag
345 %attr(755,root,root) %{_bindir}/hp-print
346 %attr(755,root,root) %{_bindir}/hp-printsettings
347 %attr(755,root,root) %{_bindir}/hp-systray
348 %attr(755,root,root) %{_bindir}/hp-toolbox
349 %attr(755,root,root) %{_bindir}/hp-wificonfig
350 %attr(755,root,root) %{_datadir}/hplip/devicesettings.py
351 %attr(755,root,root) %{_datadir}/hplip/wificonfig.py
352 %attr(755,root,root) %{_datadir}/hplip/fab.py
353 %attr(755,root,root) %{_datadir}/hplip/faxsetup.py
354 %attr(755,root,root) %{_datadir}/hplip/linefeedcal.py
355 %attr(755,root,root) %{_datadir}/hplip/pqdiag.py
356 %attr(755,root,root) %{_datadir}/hplip/print.py
357 %attr(755,root,root) %{_datadir}/hplip/printsettings.py
358 %attr(755,root,root) %{_datadir}/hplip/systray.py
359 %attr(755,root,root) %{_datadir}/hplip/toolbox.py
360 %{_datadir}/hplip/ui4
361 %{_datadir}/hplip/data/images
362 %{_sysconfdir}/xdg/autostart/hplip-systray.desktop
363 %{_desktopdir}/hplip.desktop
365 %verify(not md5 mtime size) /var/lib/hp/hplip.state
368 %defattr(644,root,root,755)
369 %attr(755,root,root) %{_libdir}/libhpdiscovery.so.*.*.*
370 %attr(755,root,root) %ghost %{_libdir}/libhpdiscovery.so.0
371 %attr(755,root,root) %{_libdir}/libhpip.so.*.*.*
372 %attr(755,root,root) %ghost %{_libdir}/libhpip.so.0
373 %attr(755,root,root) %{_libdir}/libhpipp.so.*.*.*
374 %attr(755,root,root) %ghost %{_libdir}/libhpipp.so.0
375 %attr(755,root,root) %{_libdir}/libhpmud.so.*.*.*
376 %attr(755,root,root) %ghost %{_libdir}/libhpmud.so.0
379 %defattr(644,root,root,755)
380 %doc scan/sane/hpaio.desc
381 %attr(755,root,root) %{_libdir}/sane/libsane-hpaio.so.*.*.*
382 %attr(755,root,root) %{_libdir}/sane/libsane-hpaio.so.1
385 %defattr(644,root,root,755)
387 %{cups_ppddir}/HP-Fax*.ppd.gz
389 %{cups_ppddir}/apollo-*.ppd.gz
390 %{cups_ppddir}/hp-*.ppd.gz
392 %files -n cups-backend-hp
393 %defattr(644,root,root,755)
394 %attr(755,root,root) %{cups_backenddir}/hp
395 %attr(755,root,root) %{cups_filterdir}/foomatic-rip-hplip
396 %attr(755,root,root) %{cups_filterdir}/hpcups
397 %attr(755,root,root) %{cups_filterdir}/hpps
398 %{cups_datadir}/drv/hp
401 %files -n cups-backend-hpfax
402 %defattr(644,root,root,755)
403 %attr(755,root,root) %{cups_backenddir}/hpfax
404 %attr(755,root,root) %{cups_filterdir}/hpcupsfax
405 %attr(755,root,root) %{cups_filterdir}/pstotiff
406 %{cups_mimedir}/pstotiff.types
407 %{cups_mimedir}/pstotiff.convs