123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146 |
- # Maintainer (Arch): Andreas Radke <andyrtr@archlinux.org>
- # Maintainer (Arch): Tom Gundersen <teg@jklm.no>
- # Contributor (Arch): Rémy Oudompheng <remy@archlinux.org>
- # Contributor (Arch): Morgan LEFIEUX <comete@archlinuxfr.org>
- # Maintainer (Hyperbola): André Silva <emulatorman@hyperbola.info>
- # Contributor (Hyperbola): Márcio Silva <coadde@hyperbola.info>
- # Contributor (Hyperbola): Jorge López <jorginho@hyperbola.info>
- # Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe>
- # Maintainer: David P. <megver83@parabola.nu>
- pkgname=hplip
- pkgver=3.20.6
- pkgrel=3
- pkgrel+=.par1
- epoch=1
- pkgdesc="Drivers for HP DeskJet, OfficeJet, Photosmart, Business Inkjet and some LaserJet"
- pkgdesc+=", without printers with nonfree drivers support and hplip-plugin binary blobs recommendation (Parabola rebranded)"
- arch=('x86_64')
- arch+=('i686' 'armv7h')
- url="https://hplipopensource.com"
- license=('GPL' 'custom')
- depends=('python-dbus' 'python-distro' 'ghostscript' 'net-snmp' 'foomatic-db-engine' 'python-gobject' 'libxcrypt')
- makedepends=('python-pyqt5' 'sane' 'rpcbind' 'cups' 'libusb')
- optdepends=('cups: for printing support'
- 'sane: for scanner support'
- 'xsane: sane scanner frontend'
- 'python-pillow: for commandline scanning support'
- 'python-reportlab: for pdf output in hp-scan'
- 'rpcbind: for network support'
- 'python-pyqt5: for running GUI and hp-toolbox'
- 'libusb: for advanced usb support'
- 'wget: for network support')
- replaces=(${pkgname}-libre)
- conflicts=(${pkgname}-libre)
- backup=('etc/hp/hplip.conf' 'etc/sane.d/dll.d/hpaio')
- source=(https://downloads.sourceforge.net/${pkgname}/$pkgname-$pkgver.tar.gz{,.asc}
- disable_upgrade.patch
- 0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch
- 0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch
- 0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch
- https://launchpadlibrarian.net/480406888/hplip-configure-python.patch
- python3.diff
- reproducible-gzip.patch
- hplip-revert-plugins.patch)
- sha512sums=('ccd82112afb5ee73f5d027819ab89ba8f52ec36a4b061d314565f95d288be24e045050c3368332eeae50c0fb170f8cb015fdd8dde4b32a08e3758f0f0f4e8e96'
- 'SKIP'
- 'f0cf2774e53070406e89614b748e3c45079be889b83d5854340b92093643f6f8b332d6b6e617884d2bdcbef667a84ee5741b07c5fb080bb04925bb454af448d1'
- '22aeb5b851f78bc6bc62e0bc3da99fecaf42d7604af41e2f3343f8d3666541f7b06b7d1a7d0ddf24f1731ac7b12dfe582375a98e3b94dfa323d6ce954549ca67'
- '763949a0bc460dcc9faefc86f2a91cf342781bfce696ed0c3826758572dd03ac266bbeb7b6a4f9376ac298d7d3c9c4def42d94921a8e1d1695e39396e36d95ff'
- '8710e039626878270b8b7bc1569566274d935c84652d758e25ce8fe01c0f44d911148620bb494489e1238201c01f3ba255c19f7dc5c2ff0d45a5f2a79190286b'
- 'c41d5812ab9b5994e06f82acb0299c69edeaed548f5df2a3578c6c6428223e9cf7ec3b746f6e3071b6c858e2b0552417ba4695e1032ea41657bf852eb3ffc3fe'
- '5885b223f96706bc09a147b5c141d620846c9058563e986983ca2ab90922cabe891a651d90d5004d45549b3874c40f8a1570a8a79e067d66f1826681111c7e82'
- '7bad907228b7c2f3c43128f087a2f8e03778760b7a26179ff441c1f60127e2fca08c94dff76baea2469d3a253a8f46b285d0af0f62a6d8738926caf7a10f670b'
- '0dda7afaa96746a45c4720304338aea2315c983edeb8cdde4fbb98ea18421e64209947f87a374c6333ce777ea0e9565e7c5ad4c8f4c987f17d308466d02f475b')
- validpgpkeys=('4ABA2F66DBD5A95894910E0673D770CDA59047B9') # HPLIP <hplip@hp.com>
- prepare() {
- cd "$pkgname"-$pkgver
- echo "Removing printers not supported with free drivers from the database"
- # based on https://devel.trisquel.info/trisquel/package-helpers/raw/master/helpers/make-hplip
- # keep header license
- sed '/\[/,99999d' data/models/models.dat > mktemp
- for model in $(grep '\[' data/models/models.dat | sed 's/\[//; s/\]//'); do
- sed -n "/\[$model\]/,/^$/p;" data/models/models.dat > mktemp1
- grep '^download=True' -q mktemp1 && continue
- grep '^plugin=1' -q mktemp1 && continue
- grep '^support-type=0' -q mktemp1 && continue
- cat mktemp1 >> mktemp
- done
- sed -i 's/plugin=2/plugin=0/g' mktemp
- cp mktemp data/models/models.dat
- rm -v mktemp{,1}
- # remove nonfree software recommendation - https://labs.parabola.nu/issues/893
- sed -i 's/\, requires proprietary plugin//' $(grep -rlI '[,] requires proprietary plugin')
- echo "Preparing source"
- # disable insecure update - https://bugs.archlinux.org/task/38083
- patch -Np0 -i "${srcdir}"/disable_upgrade.patch
- # add missing 'include <cups/ppd.h>' at various places
- patch -Np1 -i "${srcdir}"/0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch
- # fix some handling unicode file names FS#58412
- patch -Np1 -i "${srcdir}"/0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch
- # remove binary blob libImageProcessor and all linking - FS#59681
- patch -Np1 -i "${srcdir}"/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch
- # Workaround patch for missing Python3 transition of the old
- # (pre-USB-storage) photo memory card support (pcardext) - Debian patch
- patch -Np1 -i "${srcdir}"/python3.diff
- # https://bugs.launchpad.net/hplip/+bug/1879445
- # broken scanning - https://bugs.archlinux.org/task/66704
- patch -Np1 -i ../hplip-configure-python.patch
- # make gzip creation reproducible by removing the timestamp
- patch -Np1 -i ../reproducible-gzip.patch
- # why do they disable the plugins for almost all printers??? - FS#67119
- patch -Np1 -i ../hplip-revert-plugins.patch
- export AUTOMAKE='automake --foreign'
- autoreconf --force --install
- }
- build() {
- cd "$pkgname"-$pkgver
- #export CFLAGS+=" $(python3-config --includes)" # Fix build with python 3.8
- ./configure --prefix=/usr \
- --enable-qt5 \
- --disable-qt4 \
- --enable-hpcups-install \
- --enable-cups-drv-install \
- --enable-pp-build #--help
- make
- }
- package() {
- cd "$pkgname"-$pkgver
- make -j1 rulesdir=/usr/lib/udev/rules.d DESTDIR="$pkgdir/" install
- # remove config provided by sane and autostart of hp-daemon
- rm -rf "$pkgdir"/etc/{sane.d,xdg}
- install -dm755 "${pkgdir}"/etc/sane.d/dll.d
- echo hpaio > "${pkgdir}"/etc/sane.d/dll.d/hpaio
- # remove HAL .fdi file because HAL is no longer used
- rm -vrf "$pkgdir"/usr/share/hal
- # remove rc script
- rm -vrf "$pkgdir"/etc/init.d
- # add mixed license file
- install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 COPYING
- # Compile Python bytecode:
- python -m compileall -d /usr/share "$pkgdir/usr/share"
- python -O -m compileall -d /usr/share "$pkgdir/usr/share"
- }
|