diff options
author | Ludovic Courtès <ludo@gnu.org> | 2013-04-26 16:43:08 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2013-04-26 16:43:08 +0200 |
commit | a9db7d10b6e4e86fb2b87a4161db3b1f202002fd (patch) | |
tree | 4a22481ab65447d8bc1cc307a76a884a7e7bbee9 /build-aux/sync-synopses.scm | |
parent | e33d9d6f09874f83bb5a03f49cb969a84588e10e (diff) | |
parent | 2b6bdf7eb3c95716ac107ea6caea2e0b7077ae77 (diff) |
Merge branch 'master' into core-updates
Conflicts:
Makefile.am
gnu/packages/autotools.scm
gnu/packages/guile.scm
gnu/packages/python.scm
gnu/packages/shishi.scm
guix/gnu-maintenance.scm
guix/scripts/build.scm
guix/scripts/gc.scm
guix/scripts/package.scm
guix/scripts/substitute-binary.scm
guix/ui.scm
nix/nix-daemon/guix-daemon.cc
test-env.in
tests/nar.scm
tests/store.scm
Diffstat (limited to 'build-aux/sync-synopses.scm')
-rw-r--r-- | build-aux/sync-synopses.scm | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/build-aux/sync-synopses.scm b/build-aux/sync-synopses.scm new file mode 100644 index 0000000000..c1049d3398 --- /dev/null +++ b/build-aux/sync-synopses.scm @@ -0,0 +1,62 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +;;; +;;; Report synopses that defer from those found in the GNU Womb. +;;; + +(use-modules (guix gnu-maintenance) + (guix packages) + (guix utils) + (guix ui) + (gnu packages) + (srfi srfi-1) + (srfi srfi-26) + (ice-9 match)) + +(define official + ;; GNU package descriptors from the Womb. + (official-gnu-packages)) + +(define gnus + ;; GNU packages available in the distro. + (let ((lookup (lambda (p) + (find (lambda (descriptor) + (equal? (gnu-package-name descriptor) + (package-name p))) + official)))) + (fold-packages (lambda (package result) + (or (and=> (lookup package) + (cut alist-cons package <> result)) + result)) + '()))) + +;; Iterate over GNU packages. Report those whose synopsis defers from that +;; found upstream. +(for-each (match-lambda + ((package . descriptor) + (let ((upstream (gnu-package-doc-summary descriptor)) + (downstream (package-synopsis package)) + (loc (or (package-field-location package 'synopsis) + (package-location package)))) + (unless (and upstream (string=? upstream downstream)) + (format (guix-warning-port) + "~a: ~a: proposed synopsis: ~s~%" + (location->string loc) (package-name package) + upstream))))) + gnus) |