unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Andy Patterson <ajpatter@uwaterloo.ca>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 25101@debbugs.gnu.org
Subject: bug#25101: [PATCH 3/3] gnu: Add and use sane-backends.
Date: Wed, 14 Dec 2016 00:03:25 -0500	[thread overview]
Message-ID: <20161214050325.6348-4-ajpatter@uwaterloo.ca> (raw)
In-Reply-To: <20161214050325.6348-1-ajpatter@uwaterloo.ca>

* gnu/packages/scanner.scm (sane-backends): New variable.
* gnu/packages/gnome.scm (colord, simple-scan): Use it instead of
'sane-backends-minimal'.
* gnu/packages/libreoffice.scm (libreoffice): Likewise.
* gnu/packages/wine.scm (wine): Likewise.
---
 gnu/packages/gnome.scm       |  4 ++--
 gnu/packages/libreoffice.scm |  2 +-
 gnu/packages/scanner.scm     | 40 ++++++++++++++++++++++++++++++++++++++++
 gnu/packages/wine.scm        |  2 +-
 4 files changed, 44 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 7ffe0bc2d..1762381cf 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -2433,7 +2433,7 @@ keyboard shortcuts.")
        ("libusb" ,libusb)
        ("sqlite" ,sqlite)
        ("polkit" ,polkit)
-       ("sane-backends" ,sane-backends-minimal)))
+       ("sane-backends" ,sane-backends)))
     (home-page "http://www.freedesktop.org/software/colord/")
     (synopsis "Color management service")
     (description "Colord is a system service that makes it easy to manage,
@@ -3571,7 +3571,7 @@ USB transfers with your high-level application or system daemon.")
        ("cairo" ,cairo)
        ("gdk-pixbuf" ,gdk-pixbuf)
        ("gusb" ,gusb)
-       ("libsane" ,sane-backends-minimal)))
+       ("libsane" ,sane-backends)))
     (native-inputs
      `(("gettext" ,gettext-minimal)
        ("itstool" ,itstool)
diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm
index 307a54496..279e8e2d2 100644
--- a/gnu/packages/libreoffice.scm
+++ b/gnu/packages/libreoffice.scm
@@ -784,7 +784,7 @@ and to return information on pronunciations, meanings and synonyms.")
        ("postgresql" ,postgresql)
        ("python" ,python)
        ("redland" ,redland)
-       ("sane-backends" ,sane-backends-minimal)
+       ("sane-backends" ,sane-backends)
        ("unixodbc" ,unixodbc)
        ("unzip" ,unzip)
        ("vigra" ,vigra)
diff --git a/gnu/packages/scanner.scm b/gnu/packages/scanner.scm
index e913858f5..fdad1c445 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 <jmd@gnu.org>
 ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
+;;; Copyright © 2016 Andy Patterson <ajpatter@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)
@@ -78,3 +80,41 @@ 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, but no drivers.")
     (license licence:gpl2+))) ; plus linking exception
+
+;; This variant links in the hpaio backend, provided by hplip, which adds
+;; support for HP scanners whose backends are not maintained by
+;; 'sane-backends'. It also builds all of those backends.
+(define-public sane-backends
+  (package
+    (inherit sane-backends-minimal)
+    (name "sane-backends")
+    (inputs
+     `(("hplip" ,(@ (gnu packages cups) hplip))
+       ,@(package-inputs sane-backends-minimal)))
+    (arguments
+     (substitute-keyword-arguments (package-arguments sane-backends-minimal)
+       ((#:phases phases)
+        `(modify-phases ,phases
+           (delete 'disable-backends)
+           (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))))))
+    (synopsis
+     "Raster image scanner library and drivers, with scanner support")
+    (description "SANE stands for \"Scanner Access Now Easy\" and is an API
+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.")))
diff --git a/gnu/packages/wine.scm b/gnu/packages/wine.scm
index 83b6297f0..367f27af5 100644
--- a/gnu/packages/wine.scm
+++ b/gnu/packages/wine.scm
@@ -83,7 +83,7 @@
        ("libmpg123" ,mpg123)
        ("libldap" ,openldap)
        ("libnetapi" ,samba)
-       ("libsane" ,sane-backends-minimal)
+       ("libsane" ,sane-backends)
        ("libpng" ,libpng)
        ("libjpeg" ,libjpeg)
        ("libtiff" ,libtiff)
-- 
2.11.0

  parent reply	other threads:[~2016-12-14  5:05 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-03 18:41 bug#25101: simple-scan can't use hpaio Danny Milosavljevic
2016-12-04  4:00 ` Andy Patterson
2016-12-04  4:00   ` bug#25101: [PATCH 1/2] gnu: Add hpaio-enabled sane-backends variant Andy Patterson
2016-12-05 20:48     ` Ludovic Courtès
2016-12-05 22:38       ` Andy Patterson
2016-12-06  9:10         ` Ludovic Courtès
2016-12-12 20:11           ` Andy Patterson
2016-12-12 22:41             ` Ludovic Courtès
2016-12-14  5:03               ` Andy Patterson
2016-12-14  5:03                 ` bug#25101: [PATCH 1/3] gnu: sane-backends: Disable backend generation Andy Patterson
2016-12-14  5:03                 ` bug#25101: [PATCH 2/3] gnu: Add and use sane-backends-minimal Andy Patterson
2016-12-14  5:03                 ` Andy Patterson [this message]
2016-12-17 22:12                 ` bug#25101: [PATCH 1/2] gnu: Add hpaio-enabled sane-backends variant Ludovic Courtès
2016-12-04  4:00   ` bug#25101: [PATCH 2/2] gnu: simple-scan: Enable hpaio support Andy Patterson
2016-12-04  4:18   ` bug#25101: simple-scan can't use hpaio Andy Patterson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20161214050325.6348-4-ajpatter@uwaterloo.ca \
    --to=ajpatter@uwaterloo.ca \
    --cc=25101@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).