;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 David Thompson ;;; Copyright © 2016 Ricardo Wurmus ;;; Copyright © 2018 Oleg Pykhalov ;;; ;;; 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 . (define-module (test-gem) #:use-module (guix import gem) #:use-module (guix base32) #:use-module (gcrypt hash) #:use-module (guix tests) #:use-module ((guix build utils) #:select (delete-file-recursively)) #:use-module (srfi srfi-41) #:use-module (srfi srfi-64) #:use-module (ice-9 match)) (define test-foo-json "{ \"name\": \"foo\", \"version\": \"1.0.0\", \"sha\": \"f3676eafca9987cb5fe263df1edf2538bf6dafc712b30e17be3543a9680547a8\", \"info\": \"A cool gem\", \"homepage_uri\": \"https://example.com\", \"dependencies\": { \"runtime\": [ { \"name\": \"bundler\" }, { \"name\": \"bar\" } ] }, \"licenses\": [\"MIT\", \"Apache 2.0\"] }") (define test-bar-json "{ \"name\": \"bar\", \"version\": \"1.0.0\", \"sha\": \"f3676eafca9987cb5fe263df1edf2538bf6dafc712b30e17be3543a9680547a8\", \"info\": \"Another cool gem\", \"homepage_uri\": \"https://example.com\", \"dependencies\": { \"runtime\": [ { \"name\": \"bundler\" }, ] }, \"licenses\": [\"MIT\", \"Apache 2.0\"] }") (d
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.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/>.

(define-module (gnu packages wdiff)
  #:use-module (guix licenses)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix build-system gnu)
  #:use-module (gnu packages texinfo)
  #:use-module (gnu packages screen)
  #:use-module (gnu packages base))

(define-public wdiff
  (package
    (name "wdiff")
    (version "1.2.2")
    (source
     (origin
      (method url-fetch)
      (uri (string-append "mirror://gnu/wdiff/wdiff-"
                          version ".tar.gz"))
      (sha256
       (base32
        "0sxgg0ms5lhi4aqqvz1rj4s77yi9wymfm3l3gbjfd1qchy66kzrl"))))
    (build-system gnu-build-system)
    (arguments
     `(#:phases (modify-phases %standard-phases
                  (add-before 'check 'fix-sh
                    (lambda _
                      (substitute* "tests/testsuite"
                        (("#! /bin/sh")
                         (string-append "#!" (which "sh")))))))))
    (native-inputs
     (list which
           ;; For some reason wdiff.info gets rebuilt.
           texinfo))
    (home-page "https://www.gnu.org/software/wdiff/")
    (synopsis "Word difference finder")
    (description
     "GNU Wdiff is a front-end to the diff program from Diffutils that
allows you to compare files on a word-by-word basis, where a word is anything
between whitespace.")
    (license gpl3+)))
('build-system 'ruby-build-system) ('propagated-inputs ('quasiquote (("bundler" ('unquote 'bundler)) ("ruby-bar" ('unquote 'ruby-bar))))) ('synopsis "A cool gem") ('description "This package provides a cool gem") ('home-page "https://example.com") ('license ('list 'license:expat 'license:asl2.0))) ('package ('name "ruby-bundler") ('version "1.14.2") ('source ('origin ('method 'url-fetch) ('uri ('rubygems-uri "bundler" 'version)) ('sha256 ('base32 "1446xiz7zg0bz7kgx9jv84y0s4hpsg61dj5l3qb0i00avc1kxd9v")))) ('build-system 'ruby-build-system) ('synopsis "Ruby gem bundler") ('description "Ruby gem bundler") ('home-page "https://bundler.io/") ('license 'license:expat)) ('package ('name "ruby-bar") ('version "1.0.0") ('source ('origin ('method 'url-fetch) ('uri ('rubygems-uri "bar" 'version)) ('sha256 ('base32 "1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk")))) ('build-system 'ruby-build-system) ('propagated-inputs ('quasiquote (('"bundler" ('unquote 'bundler))))) ('synopsis "Another cool gem") ('description "Another cool gem") ('home-page "https://example.com") ('license ('list 'license:expat 'license:asl2.0)))) #t) (x (pk 'fail x #f))))) (test-end "gem")