[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2] Add hplip
From: |
Danny Milosavljevic |
Subject: |
[PATCH v2] Add hplip |
Date: |
Mon, 21 Mar 2016 23:07:00 +0100 |
This is a patch that adds hplip. Note that hplip builds and installs but we
don't do any of the merging of different packages' ppds etc yet [the majority
of the merging will be in "services" and not in "packages", though].
diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm
index ff3d152..ca637c1 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,59 @@ 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 "HP Printer Drivers and PPDs. You can use the PPDs with CUPS
as well.")
+ (license (list license:gpl2 license:bsd-3)) ; FIXME and which MIT
+ ; FIXME remove Binary plugin-ins, hp-plugin
+ ; 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")
+ "--disable-fax-build" ; until mime.types
merging works; FIXME re-enable
+ ,(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
+ ; #:make-flags (list (string-append "DESTDIR=" (assoc-ref
%outputs "out")))
+ #: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)
+ (substitute* "Makefile.am"
(("/usr/include/libusb-1.0") (string-append (assoc-ref inputs "libusb")
"/include/libusb-1.0"))
+ (("hplip_statedir[
]*=[ ]*/var/lib/hp") (string-append "hplip_statedir = " (assoc-ref outputs
"out") "/var/lib/hp")) ; only for the installer.
+ (("hplip_confdir[ ]*=[
]*/etc/hp") (string-append "hplip_confdir = " (assoc-ref outputs "out")
"/etc/hp")) ; only for installing the default config
+ (("halpredir[ ]*=[
]*/usr/share/hal/fdi/preprobe/10osvendor") (string-append "halpredir = "
(assoc-ref outputs "out") "/share/hal/fdi/preprobe/10osvendor")) ; I don't
think we use hal, so who cares?
+ (("rulesdir[ ]*=[
]*/etc/udev/rules.d") (string-append "rulesdir = " (assoc-ref outputs "out")
"/lib/udev/rules.d")) ; will be merged by base service
+
(("rulessystemdir=/usr/lib/systemd/system") (string-append "rulessystemdir = "
(assoc-ref outputs "out") "/lib/systemd/system")) ; dummy
+ (("/etc/sane.d")
(string-append (assoc-ref outputs "out") "/etc/sane.d"))))
+ %standard-phases))))
+ (inputs `(("libjpeg" ,libjpeg)
+ ("cups-minimal" ,cups-minimal)
+ ("libusb" ,libusb)
+ ("python" ,python) ; FIXME propagated-inputs ??
+ ("sane-backends" ,sane-backends)
+ ("dbus" ,dbus)))
+ (native-inputs `(("pkg-config" ,pkg-config)
+ ("automake" ,automake)
+ ("autoconf" ,autoconf)
+ ("libtool" ,libtool)
+ ("python" ,python) ; patch-shebang warning
+))))
- 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 <=
- Re: [PATCH v2] Add hplip, Andy Wingo, 2016/03/22
- [PATCH v3] Add hplip, Danny Milosavljevic, 2016/03/22
- 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