From 34138e42ba69fa77eb6d9221a7441fa52c4d9259 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 31 Dec 2015 23:08:21 +1000 Subject: gnu: Add ruby-asciidoctor. * gnu/packages/ruby.scm (ruby-asciidoctor): New variable. --- gnu/packages/ruby.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'gnu/packages/ruby.scm') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index ee5d20955c..dc2ef251de 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -36,6 +36,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages java) #:use-module (gnu packages libffi) + #:use-module (gnu packages maths) #:use-module (gnu packages networking) #:use-module (gnu packages python) #:use-module (gnu packages ragel) @@ -665,6 +666,41 @@ line of code.") ;; of the Expat license. (license license:bsd-3))) +(define-public ruby-asciidoctor + (package + (name "ruby-asciidoctor") + (version "1.5.6.1") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "asciidoctor" version)) + (sha256 + (base32 + "1jnf9y8q5asfdzilp8vcqafrc2faj719df4yh1993mh6jd0iqdy4")))) + (build-system ruby-build-system) + (arguments + `(#:test-target "test:all" + #:phases + (modify-phases %standard-phases + (add-before 'check 'remove-circular-tests + (lambda _ + ;; Remove tests that require circular dependencies to load or pass. + (delete-file "test/invoker_test.rb") + (delete-file "test/converter_test.rb") + (delete-file "test/options_test.rb") + #t))))) + (native-inputs + `(("ruby-minitest" ,ruby-minitest) + ("ruby-nokogiri" ,ruby-nokogiri) + ("ruby-asciimath" ,ruby-asciimath) + ("ruby-coderay" ,ruby-coderay))) + (synopsis "Converter from AsciiDoc content to other formats") + (description + "Asciidoctor is a text processor and publishing toolchain for converting +AsciiDoc content to HTML5, DocBook 5 (or 4.5) and other formats.") + (home-page "http://asciidoctor.org") + (license license:expat))) + (define-public ruby-ci-reporter (package (name "ruby-ci-reporter") -- cgit v1.2.3 From 20a0f80414cc953c2a3836ded012841febd74927 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 31 Dec 2015 23:24:54 +1000 Subject: gnu: Add ruby-rack-test. * gnu/packages/ruby.scm (ruby-rack-test): New variable. --- gnu/packages/ruby.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu/packages/ruby.scm') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index dc2ef251de..31e2e0f9eb 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3329,6 +3329,37 @@ into a single method call.") (home-page "https://rack.github.io/") (license license:expat))) +(define-public ruby-rack-test + (package + (name "ruby-rack-test") + (version "0.8.3") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "rack-test" version)) + (sha256 + (base32 + "14ij39zywvr1i9f6jsixfg4zxi2q1m1n1nydvf47f0b6sfc9mv1g")))) + (build-system ruby-build-system) + (arguments + ;; Disable tests because of circular dependencies: requires sinatra, + ;; which requires rack-protection, which requires rack-test. Instead + ;; simply require the library. + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "ruby" "-Ilib" "-r" "rack/test")))))) + (propagated-inputs + `(("ruby-rack" ,ruby-rack))) + (synopsis "Testing API for Rack applications") + (description + "Rack::Test is a small, simple testing API for Rack applications. It can +be used on its own or as a reusable starting point for Web frameworks and +testing libraries to build on.") + (home-page "https://github.com/rack-test/rack-test") + (license license:expat))) + (define-public ruby-docile (package (name "ruby-docile") -- cgit v1.2.3 From a0a7e6903ac7e6e3fb9deb3977770246f0b31dd7 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 31 Dec 2015 23:29:09 +1000 Subject: gnu: Add ruby-rack-protection. * gnu/packages/ruby.scm (ruby-rack-protection): New variable. --- gnu/packages/ruby.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'gnu/packages/ruby.scm') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 31e2e0f9eb..9de6a1016c 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3360,6 +3360,35 @@ testing libraries to build on.") (home-page "https://github.com/rack-test/rack-test") (license license:expat))) +(define-public ruby-rack-protection + (package + (name "ruby-rack-protection") + (version "2.0.1") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "rack-protection" version)) + (sha256 + (base32 + "0ywmgh7x8ljf7jfnq5hmfzki3f803waji3fcvi107w7mlyflbng7")))) + (build-system ruby-build-system) + (arguments + '(;; Tests missing from the gem + #:tests? #f)) + (propagated-inputs + `(("ruby-rack" ,ruby-rack))) + (native-inputs + `(("bundler" ,bundler) + ("ruby-rspec" ,ruby-rspec-2) + ("ruby-rack-test" ,ruby-rack-test))) + (synopsis "Rack middleware that protects against typical web attacks") + (description "Rack middleware that can be used to protect against typical +web attacks. It can protect all Rack apps, including Rails. For instance, it +protects against cross site request forgery, cross site scripting, +clickjacking, directory traversal, session hijacking and IP spoofing.") + (home-page "https://github.com/sinatra/sinatra/tree/master/rack-protection") + (license license:expat))) + (define-public ruby-docile (package (name "ruby-docile") -- cgit v1.2.3 From 6ef85256070158b03f9c080880dc33919c46756d Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Fri, 1 Jan 2016 10:11:36 +1000 Subject: gnu: Add ruby-contest. * gnu/packages/ruby.scm (ruby-contest): New variable. --- gnu/packages/ruby.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gnu/packages/ruby.scm') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 9de6a1016c..ded5645835 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3389,6 +3389,25 @@ clickjacking, directory traversal, session hijacking and IP spoofing.") (home-page "https://github.com/sinatra/sinatra/tree/master/rack-protection") (license license:expat))) +(define-public ruby-contest + (package + (name "ruby-contest") + (version "0.1.3") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "contest" version)) + (sha256 + (base32 + "1p9f2292b7b0fbrcjswvj9v01z7ig5ig52328wyqcabgb553qsdf")))) + (build-system ruby-build-system) + (synopsis "Write declarative tests using nested contexts") + (description + "Contest allows writing declarative @code{Test::Unit} tests using nested +contexts without performance penalties.") + (home-page "https://github.com/citrusbyte/contest") + (license license:expat))) + (define-public ruby-docile (package (name "ruby-docile") -- cgit v1.2.3 From c4550f7568ad2c1d6fede9a0f037ae9505b9f2f2 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Fri, 1 Jan 2016 10:14:21 +1000 Subject: gnu: Add ruby-creole. * gnu/packages/ruby.scm (ruby-creole): New variable. --- gnu/packages/ruby.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu/packages/ruby.scm') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index ded5645835..28b9bc370c 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3408,6 +3408,27 @@ contexts without performance penalties.") (home-page "https://github.com/citrusbyte/contest") (license license:expat))) +(define-public ruby-creole + (package + (name "ruby-creole") + (version "0.5.0") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "creole" version)) + (sha256 + (base32 + "00rcscz16idp6dx0dk5yi5i0fz593i3r6anbn5bg2q07v3i025wm")))) + (build-system ruby-build-system) + (native-inputs + `(("ruby-bacon" ,ruby-bacon))) + (synopsis "Creole markup language converter") + (description + "Creole is a lightweight markup language and this library for converting +creole to @code{HTML}.") + (home-page "https://github.com/minad/creole") + (license license:ruby))) + (define-public ruby-docile (package (name "ruby-docile") -- cgit v1.2.3 From b88502c95c15db3318587d263adebb87e863dc6f Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Fri, 1 Jan 2016 00:12:06 +1000 Subject: gnu: Add ruby-sporkmonger-rack-mount. * gnu/packages/ruby.scm (ruby-sporkmonger-rack-mount): New variable. --- gnu/packages/ruby.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu/packages/ruby.scm') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 28b9bc370c..e4b4b96429 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -701,6 +701,37 @@ AsciiDoc content to HTML5, DocBook 5 (or 4.5) and other formats.") (home-page "http://asciidoctor.org") (license license:expat))) +(define-public ruby-sporkmonger-rack-mount + ;; Testing the addressable gem requires a newer commit than that released, so + ;; use an up to date version. + (let ((revision "1") + (commit "076aa2c47d9a4c081f1e9bcb56a826a9e72bd5c3")) + (package + (name "ruby-sporkmonger-rack-mount") + (version (git-version "0.8.3" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sporkmonger/rack-mount.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1scx273g3xd93424x9lxc4zyvcp2niknbw5mkz6wkivpf7xsyxdq")))) + (build-system ruby-build-system) + (arguments + ;; Tests currently fail so disable them. + ;; https://github.com/sporkmonger/rack-mount/pull/1 + `(#:tests? #f)) + (propagated-inputs `(("ruby-rack" ,ruby-rack))) + (synopsis "Stackable dynamic tree based Rack router") + (description + "@code{Rack::Mount} supports Rack's @code{X-Cascade} convention to +continue trying routes if the response returns pass. This allows multiple +routes to be nested or stacked on top of each other.") + (home-page "https://github.com/sporkmonger/rack-mount") + (license license:expat)))) + (define-public ruby-ci-reporter (package (name "ruby-ci-reporter") -- cgit v1.2.3 From d64ebebd8e91688d1f86fff72c7a133b4be09921 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Wed, 23 Dec 2015 11:42:15 +1000 Subject: gnu: Add ruby-erubis. * gnu/packages/ruby.scm (ruby-erubis): New variable. --- gnu/packages/ruby.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu/packages/ruby.scm') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index e4b4b96429..4131529afe 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -891,6 +891,29 @@ functions.") (home-page "https://github.com/ahoward/options") (license license:ruby))) +(define-public ruby-erubis + (package + (name "ruby-erubis") + (version "2.7.0") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "erubis" version)) + (sha256 + (base32 + "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3")))) + (build-system ruby-build-system) + (arguments + '(#:tests? #f)) ; tests do not run properly with Ruby 2.0 + (synopsis "Implementation of embedded Ruby (eRuby)") + (description + "Erubis is a fast implementation of embedded Ruby (eRuby) with several +features such as multi-language support, auto escaping, auto trimming spaces +around @code{<% %>}, a changeable embedded pattern, and Ruby on Rails +support.") + (home-page "http://www.kuwata-lab.com/erubis/") + (license license:expat))) + (define-public ruby-orderedhash (package (name "ruby-orderedhash") -- cgit v1.2.3 From 670ee20a57a4417f34458bb489f717378077e2ae Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Mon, 5 Feb 2018 11:45:21 +0100 Subject: gnu: Add ruby-rake. * gnu/packages/ruby.scm (ruby-rake): New variable. --- gnu/packages/ruby.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu/packages/ruby.scm') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 4131529afe..703ca37aa0 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -4911,3 +4911,24 @@ thing this library does today is convert org-mode files to HTML or Textile or Markdown.") (home-page "https://github.com/wallyqs/org-ruby") (license license:expat))) + +(define-public ruby-rake + (package + (name "ruby-rake") + (version "12.3.0") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "rake" version)) + (sha256 + (base32 + "190p7cs8zdn07mjj6xwwsdna3g0r98zs4crz7jh2j2q5b0nbxgjf")))) + (build-system ruby-build-system) + (native-inputs + `(("bundler" ,bundler))) + (synopsis "Rake is a Make-like program implemented in Ruby") + (description + "Rake is a Make-like program where tasks and dependencies are specified +in standard Ruby syntax.") + (home-page "https://github.com/ruby/rake") + (license license:expat))) -- cgit v1.2.3 From e218b0c8b39b5f1560ac0401181d4209ffe93119 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Wed, 30 Dec 2015 16:51:18 +1000 Subject: gnu: Add ruby-ruby-engine. * gnu/packages/ruby.scm (ruby-ruby-engine): New variable. --- gnu/packages/ruby.scm | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) (limited to 'gnu/packages/ruby.scm') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 703ca37aa0..dcf4cda26a 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3716,6 +3716,55 @@ 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-ruby-engine + (package + (name "ruby-ruby-engine") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "ruby_engine" version)) + (sha256 + (base32 + "1d0sd4q50zkcqhr395wj1wpn2ql52r0fpwhzjfvi1bljml7k546v")))) + (build-system ruby-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'clean-up + (lambda _ + (delete-file "Gemfile.lock") + (substitute* "ruby_engine.gemspec" + ;; Remove unnecessary imports that would entail further + ;; dependencies. + ((".*.freeze, \\[\\\"~> 10.0\\\"\\]") + "%q.freeze, [\">= 10.0\"]") + ;; Soften the rspec dependency + (("%q.freeze, \\[\\\"~> 2.4\\\"\\]") + "%q.freeze, [\">= 2.4\"]")) + (substitute* "Rakefile" + (("require 'rubygems/tasks'") "") + (("Gem::Tasks.new") "")) + ;; Remove extraneous .gem file that otherwise gets installed. + (delete-file "pkg/ruby_engine-1.0.0.gem") + #t))))) + (native-inputs + `(("bundler" ,bundler) + ("ruby-rake" ,ruby-rake) + ("ruby-rspec" ,ruby-rspec))) + (synopsis "Simplifies checking for Ruby implementation") + (description + "@code{ruby_engine} provides an RubyEngine class that can be used to +check which implementation of Ruby is in use. It can provide the interpreter +name and provides query methods such as @{RubyEngine.mri?}.") + (home-page "https://github.com/janlelis/ruby_engine") + (license license:expat))) + (define-public ruby-turn (package (name "ruby-turn") -- cgit v1.2.3