* gnu/packages/scanner.scm (sane-backends+hpaio): New variable. --- gnu/packages/scanner.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+)
diff --git a/gnu/packages/scanner.scm b/gnu/packages/scanner.scm index 76817b3..f918291 100644 --- a/gnu/packages/scanner.scm +++ b/gnu/packages/scanner.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 John Darrington <j...@gnu.org> ;;; Copyright © 2015 Andy Wingo <wi...@igalia.com> +;;; Copyright © 2016 Andy Patterson <ajpat...@uwaterloo.ca> ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,6 +21,7 @@ (define-module (gnu packages scanner) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (gnu packages pkg-config) #:use-module (gnu packages libusb) @@ -73,3 +75,31 @@ proving access to any raster image scanner hardware (flatbed scanner, hand-held scanner, video- and still-cameras, frame-grabbers, etc.). The package contains the library and drivers.") (license licence:gpl2+))) ; plus linking exception + +(define-public sane-backends+hpaio + (package + (inherit sane-backends) + (name "sane-backends+hpaio") + (inputs + `(("hplip" ,(@ (gnu packages cups) hplip)) + ,@(package-inputs sane-backends))) + (arguments + (substitute-keyword-arguments (package-arguments sane-backends) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'unpack 'add-backends + (lambda _ + (substitute* "backend/dll.conf.in" + (("hp5590" all) (format #f "~a~%~a" all "hpaio"))) + #t)) + (add-after 'install 'install-hpaio + (lambda* (#:key inputs outputs #:allow-other-keys) + (define hplip (string-append (assoc-ref inputs "hplip") + "/lib/sane")) + (define out (string-append (assoc-ref outputs "out") + "/lib/sane")) + (for-each + (lambda (file) + (symlink file (string-append out "/" (basename file)))) + (find-files hplip)) + #t)))))))) -- 2.10.2