gnu-maintenance: 'gnu-package?' returns #t for R and for GNOME packages.

Reported by John Darrington.

* guix/gnu-maintenance.scm (gnu-package?)[mirror-type]: Add "gnome" to
  the list of GNU mirrors.  Return #f for "cran".
master
Ludovic Courtès 2015-05-05 13:46:20 +02:00
parent 099a2c7055
commit c4e8d513f2
1 changed files with 13 additions and 4 deletions

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2010, 2011, 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2010, 2011, 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;;
;;; This file is part of GNU Guix.
@ -179,9 +179,18 @@ network to check in GNU's database."
(define (mirror-type url)
(let ((uri (string->uri url)))
(and (eq? (uri-scheme uri) 'mirror)
(if (member (uri-host uri) '("gnu" "gnupg" "gcc"))
'gnu
'non-gnu))))
(cond
((member (uri-host uri)
'("gnu" "gnupg" "gcc" "gnome"))
;; Definitely GNU.
'gnu)
((equal? (uri-host uri) "cran")
;; Possibly GNU: mirror://cran could be either GNU R itself
;; or a non-GNU package.
#f)
(else
;; Definitely non-GNU.
'non-gnu)))))
(let ((url (and=> (package-source package) origin-uri))
(name (package-name package)))