summary refs log tree commit diff
path: root/gnu/packages/ruby.scm
diff options
context:
space:
mode:
authorBen Woodcroft <donttrustben@gmail.com>2015-12-29 14:11:21 +1000
committerRicardo Wurmus <ricardo.wurmus@mdc-berlin.de>2016-01-07 15:36:05 +0100
commit7d3a1a2dd21b011946094e3c20da4b716c9dd6b6 (patch)
tree92d3fdc56f8d01b8ea92556b7b61d626d42ab346 /gnu/packages/ruby.scm
parent5dfd276602a0218b22fccaf1116f2d5e935d4893 (diff)
downloadguix-7d3a1a2dd21b011946094e3c20da4b716c9dd6b6.tar.gz
gnu: Add ruby-ansi.
* gnu/packages/ruby.scm (ruby-ansi): New variable.
Diffstat (limited to 'gnu/packages/ruby.scm')
-rw-r--r--gnu/packages/ruby.scm36
1 files changed, 36 insertions, 0 deletions
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 0dcdb33d7c..4ac3385a6c 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -2894,3 +2894,39 @@ programs to concentrate on the implementation of network protocols.  It can be
 used to create both network servers and clients.")
     (home-page "http://rubyeventmachine.com")
     (license (list license:ruby license:gpl3)))) ; GPLv3 only AFAICT
+
+(define-public ruby-ansi
+  (package
+    (name "ruby-ansi")
+    (version "1.5.0")
+    (source
+     (origin
+       (method url-fetch)
+       ;; Fetch from GitHub as the gem does not contain testing code.
+       (uri (string-append "https://github.com/rubyworks/ansi/archive/"
+                           version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1zdip30hivyipi8hndhb457bhiz033awd00bgrsk5axjrwp6zhly"))))
+    (build-system ruby-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         ;; Disable testing to break the cycle ansi, ae, ansi, as well as the
+         ;; cycle ansi, qed, ansi.  Instead simply test that the library can
+         ;; be require'd.
+         (replace 'check
+           (lambda _
+             (zero? (system* "ruby" "-Ilib" "-r" "ansi")))))))
+    (synopsis "ANSI escape code related libraries")
+    (description
+     "This package is a collection of ANSI escape code related libraries
+enabling ANSI colorization and stylization of console output.  Included in the
+library are the @code{Code} module, which defines ANSI codes as constants and
+methods, a @code{Mixin} module for including color methods, a @code{Logger}, a
+@code{ProgressBar}, and a @code{String} subclass.  The library also includes a
+@code{Terminal} module which provides information about the current output
+device.")
+    (home-page "http://rubyworks.github.io/ansi")
+    (license license:bsd-2)))