[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3] Add hplip
From: |
Danny Milosavljevic |
Subject: |
[PATCH v3] Add hplip |
Date: |
Tue, 22 Mar 2016 11:30:01 +0100 |
Fixed some whitespace and added line breaks to make guix lint happy. Also added
python-wrapper as input so that hp-setup works.
diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm
index ff3d152..266c741 100644
--- a/gnu/packages/cups.scm
+++ b/gnu/packages/cups.scm
@@ -26,6 +26,10 @@
#:use-module (gnu packages)
#:use-module (gnu packages avahi)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages libusb)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages scanner)
#:use-module (gnu packages image)
#:use-module (gnu packages fonts) ;font-dejavu
#:use-module (gnu packages fontutils)
@@ -297,3 +301,96 @@ device-specific programs to convert and print many types
of files.")
("gnutls" ,gnutls)
("cups-filters" ,cups-filters)
("zlib" ,zlib)))))
+
+(define-public hplip
+ (package
+ (name "hplip")
+ (version "3.16.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/hplip/"
+ "/hplip-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nflgrbyl0fz35djnkn7qsfr5g4sh8lixqna9jvs52wasjllbj7j"))))
+ (build-system gnu-build-system)
+ (home-page "http://hplipopensource.com/")
+ (synopsis "HP Printer Drivers")
+ (description "Hewlett-Packard Printer Drivers and PPDs.")
+ (license (list license:gpl2 license:bsd-3)) ; FIXME and which MIT
+ ; FIXME remove proprietary plug-in installer, hp-plugin (plugin.py)
+ ; FIXME PPDs use "hpcups" in cupsFilter. In which directory?
+ ; TODO install apparmor profile files
+ (arguments `(#:configure-flags `("--disable-network-build"
+ ,(string-append "--prefix="
+ (assoc-ref %outputs
"out"))
+ ,(string-append "--sysconfdir="
+ (assoc-ref %outputs
"out") "/etc")
+ ; until mime.types merging works; FIXME
re-enable
+ "--disable-fax-build"
+ ,(string-append "--with-cupsfilterdir="
+ (assoc-ref %outputs "out")
+ "/lib/cups/filter") ;
TODO merge
+ ,(string-append "--with-cupsbackenddir="
+ (assoc-ref %outputs "out")
+ "/lib/cups/backend") ;
TODO merge
+ ,(string-append "--with-icondir="
+ (assoc-ref %outputs "out")
+ "/share/applications") ;
TODO merge
+ ,(string-append "--with-systraydir="
+ (assoc-ref %outputs "out")
+ "/etc/xdg")) ; TODO merge
+ #:phases (alist-cons-after 'fix-libusb 'autoreconf
+ (lambda _
+ (setenv "AUTOMAKE" "automake --foreign")
+ (zero? (system* "autoreconf" "-fi")))
+ (alist-cons-after 'unpack 'fix-libusb
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* "Makefile.am"
+ (("/usr/include/libusb-1.0")
+ (string-append (assoc-ref inputs
"libusb")
+
"/include/libusb-1.0"))
+ (("hplip_statedir[ ]*=[
]*/var/lib/hp")
+ ; only for the installer.
+ (string-append "hplip_statedir = "
out
+ "/var/lib/hp"))
+ (("hplip_confdir[ ]*=[ ]*/etc/hp")
+ ; only for installing the default
config
+ (string-append "hplip_confdir = "
out
+ "/etc/hp"))
+ (("halpredir[ ]*=[
]*/usr/share/hal/fdi/preprobe/10osvendor")
+ ; I don't think we use hal
+ (string-append "halpredir = " out
+
"/share/hal/fdi/preprobe/10osvendor"))
+ (("rulesdir[ ]*=[
]*/etc/udev/rules.d")
+ ; will be merged by base service
+ (string-append "rulesdir = " out
+
"/lib/udev/rules.d"))
+
(("rulessystemdir=/usr/lib/systemd/system")
+ ; dummy
+ (string-append "rulessystemdir = "
out
+
"/lib/systemd/system"))
+ (("/etc/sane.d")
+ (string-append out
+ "/etc/sane.d")))))
+ %standard-phases))))
+ ; error: Unable to locate models.dat file
+ ; Python3 support is available starting from HPLIP-3.15.2
+ (inputs `(("libjpeg" ,libjpeg)
+ ("cups-minimal" ,cups-minimal)
+ ("libusb" ,libusb)
+ ("sane-backends" ,sane-backends)
+ ("dbus" ,dbus)
+ ; I don't think we need to propagate those.
+ ; wrapper: makes "python" available rather than "python3"
+ ("python-wrapper" ,python-wrapper)
+ ("python" ,python) ; patch-shebang still complains
+ ; TODO: make hp-setup find python-dbus
+ ("python-dbus" ,python-dbus)))
+ ;(propagated-inputs `(("python" ,python)
+ ; ("python-dbus" ,python-dbus)))
+ (native-inputs `(("pkg-config" ,pkg-config)
+ ("automake" ,automake)
+ ("autoconf" ,autoconf)
+ ("libtool" ,libtool)))))
- Using cups, Danny Milosavljevic, 2016/03/12
- Re: Using cups, Ludovic Courtès, 2016/03/13
- Re: Using cups, Danny Milosavljevic, 2016/03/15
- hplip package (work in progress), Danny Milosavljevic, 2016/03/15
- Re: hplip package (work in progress), Andy Wingo, 2016/03/16
- Re: hplip package (work in progress), Andy Wingo, 2016/03/16
- Re: hplip package (work in progress), Danny Milosavljevic, 2016/03/19
- [PATCH v2] Add hplip, Danny Milosavljevic, 2016/03/21
- Re: [PATCH v2] Add hplip, Andy Wingo, 2016/03/22
- [PATCH v3] Add hplip,
Danny Milosavljevic <=
- Re: [PATCH v3] Add hplip, Andy Wingo, 2016/03/22
- [PATCH v4] Add hplip, Danny Milosavljevic, 2016/03/22
- cups-service, Danny Milosavljevic, 2016/03/22
- Re: cups-service, Danny Milosavljevic, 2016/03/22
- cups-service v2, Danny Milosavljevic, 2016/03/23
- Re: [PATCH v4] Add hplip, Andy Wingo, 2016/03/23
- [PATCH v5] Add hplip, Danny Milosavljevic, 2016/03/23
- [PATCH v6] Add hplip, Danny Milosavljevic, 2016/03/23
- Re: [PATCH v6] Add hplip, Efraim Flashner, 2016/03/23
- [PATCH v7] Add hplip, Danny Milosavljevic, 2016/03/23