~ruther/guix-local

ab8ed44fcee9208ecb8d61a5060aa204a6fb6f06 — Ludovic Courtès 13 years ago 708d0ce
snix: Gracefully handle `null' in Nix build inputs.

* guix/snix.scm (snix-derivation->guix-package)[convert-inputs]:
  Gracefully handle `null' as an input.
1 files changed, 13 insertions(+), 10 deletions(-)

M guix/snix.scm
M guix/snix.scm => guix/snix.scm +13 -10
@@ 1,5 1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2010, 2011, 2012 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2010, 2011, 2012, 2013 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;


@@ 366,15 366,18 @@ location of DERIVATION."
                       attribute-value)
           (#f
            '())
           ((('derivation _ _ (attributes ...)) ...)
            (map (lambda (attrs)
                   (let* ((full-name (attribute-value
                                      (find-attribute-by-name "name" attrs)))
                          (name      (package-name->name+version full-name)))
                     (list name
                           (list 'unquote
                                 (string->symbol name)))))
                 attributes))))
           ((inputs ...)
            ;; Inputs can be either derivations or the null value.
            (filter-map (match-lambda
                         (('derivation _ _ (attributes ...))
                          (let* ((full-name
                                  (attribute-value
                                   (find-attribute-by-name "name" attributes)))
                                 (name (package-name->name+version full-name)))
                            (list name
                                  (list 'unquote (string->symbol name)))))
                         ('null #f))
                        inputs))))

       (define (maybe-inputs guix-name inputs)
         (match inputs