aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2019-01-27 19:41:26 +0000
committerChristopher Baines <mail@cbaines.net>2019-02-14 21:37:58 +0000
commitf3d7bb9323582d142e6f8d6f6371d58fc55516e1 (patch)
treeb432529ab60cffa6c5e37ba18eb1d3aca3955d10
parent1f4fc12568cad3e72a947997d4e0e20296b40ac9 (diff)
downloadpatches-f3d7bb9323582d142e6f8d6f6371d58fc55516e1.tar
patches-f3d7bb9323582d142e6f8d6f6371d58fc55516e1.tar.gz
gnu: Add ruby-idn-ruby.
Required for the ruby-addressable tests. * gnu/packages/ruby.scm (ruby-idn-ruby): New variable.
-rw-r--r--gnu/packages/ruby.scm47
1 files changed, 47 insertions, 0 deletions
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 9c229db26c..d01297c9bc 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -40,6 +40,7 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages java)
#:use-module (gnu packages libffi)
+ #:use-module (gnu packages libidn)
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
@@ -2014,6 +2015,52 @@ irb's last-word approach.")
(home-page "http://tagaholic.me/bond/")
(license license:expat)))
+(define-public ruby-idn-ruby
+ (package
+ (name "ruby-idn-ruby")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "idn-ruby" version))
+ (sha256
+ (base32
+ "07vblcyk3g72sbq12xz7xj28snpxnh3sbcnxy8bglqbfqqhvmawr"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (delete 'check)
+ (add-after 'install 'check
+ (lambda* (#:key tests? outputs #:allow-other-keys)
+ (when tests?
+ (let* ((gem-file (cadr (find-files "." "\\.gem")))
+ (name-and-version (basename gem-file ".gem")))
+ (apply invoke
+ "ruby" "--verbose"
+ (string-append "-I"
+ (assoc-ref outputs "out")
+ "/lib/ruby/vendor_ruby/gems/"
+ name-and-version
+ "/lib")
+ (find-files "./test" ".*\\.rb"))))
+ #t)))))
+ (inputs
+ `(("libidn" ,libidn)))
+ (synopsis "Ruby Bindings for the GNU LibIDN library")
+ (description
+ "Ruby Bindings for the GNU LibIDN library, an implementation of the
+Stringprep, Punycode and IDNA specifications. These are used to encode and
+decode internationalized domain + names according to the IDNA2003
+specifications.
+
+Included are the most important parts of the Stringprep, Punycode and IDNA
+APIs like performing Stringprep processings, encoding to and decoding from
+Punycode strings and converting entire domain names to and from the ACE
+encoded form.")
+ (home-page "https://github.com/deepfryed/idn-ruby")
+ (license license:asl2.0)))
+
(define-public ruby-instantiator
(package
(name "ruby-instantiator")