aboutsummaryrefslogtreecommitdiff
path: root/gn/packages/ruby.scm
diff options
context:
space:
mode:
authorEfraim Flashner2021-02-21 17:05:45 +0200
committerEfraim Flashner2021-02-21 17:05:45 +0200
commit2297a96572410ff40912f1d0da195aa26057b36d (patch)
tree113d8f30f12d2897cf0ad867ab8a0294bf63412a /gn/packages/ruby.scm
parentb10e40be019fbcad4919dbef5267220b4bc4dcee (diff)
downloadguix-bioinformatics-2297a96572410ff40912f1d0da195aa26057b36d.tar.gz
gn: more discourse packages
Diffstat (limited to 'gn/packages/ruby.scm')
-rw-r--r--gn/packages/ruby.scm990
1 files changed, 990 insertions, 0 deletions
diff --git a/gn/packages/ruby.scm b/gn/packages/ruby.scm
index 6d758f6..4b6ea3e 100644
--- a/gn/packages/ruby.scm
+++ b/gn/packages/ruby.scm
@@ -371,6 +371,8 @@ one-to-one, while still providing an idiomatic interface.")
(substitute* "Gemfile"
(("6.0.3.3") "5.2.2.1") ; different rails version
(("active_model_serializers.*") "active_model_serializers'\n")
+ ;; hide mini-racer for now, can't build libv8
+ ((".*mini_racer.*") "")
)
#t))
(replace 'build
@@ -387,16 +389,71 @@ one-to-one, while still providing an idiomatic interface.")
("ruby-active-model-serializers" ,ruby-active-model-serializers)
("ruby-activemodel" ,ruby-activemodel)
("ruby-activerecord" ,ruby-activerecord)
+ ("ruby-aws-sdk-s3" ,ruby-aws-sdk-s3)
+ ("ruby-aws-sdk-sns" ,ruby-aws-sdk-sns)
("ruby-bootsnap" ,ruby-bootsnap)
+ ("ruby-cbor" ,ruby-cbor)
+ ("ruby-certified" ,ruby-certified)
+ ("ruby-cose" ,ruby-cose)
+ ("ruby-css-parser" ,ruby-css-parser)
+ ("ruby-diffy" ,ruby-diffy)
+ ("ruby-discourse-ember-rails" ,ruby-discourse-ember-rails)
+ ("ruby-discourse-ember-source" ,ruby-discourse-ember-source)
+ ("ruby-discourse-fonts" ,ruby-discourse-fonts)
+ ("ruby-discourse-image-optim" ,ruby-discourse-image-optim)
+ ("ruby-email-reply-trimmer" ,ruby-email-reply-trimmer)
+ ("ruby-excon" ,ruby-excon)
+ ("ruby-fabrication" ,ruby-fabrication)
+ ("ruby-fakeweb" ,ruby-fakeweb)
+ ("ruby-fast-xs" ,ruby-fast-xs)
+ ("ruby-fastimage" ,ruby-fastimage)
+ ("ruby-highline" ,ruby-highline)
+ ("ruby-http-accept-language" ,ruby-http-accept-language)
+ ("ruby-listen" ,ruby-listen)
+ ("ruby-message-bus" ,ruby-message-bus)
("ruby-mini-mime" ,ruby-mini-mime)
+ ;("ruby-mini-racer" ,ruby-mini-racer)
+ ("ruby-mini-scheduler" ,ruby-mini-scheduler)
+ ("ruby-mini-sql" ,ruby-mini-sql)
("ruby-mini-suffix" ,ruby-mini-suffix)
+ ("ruby-mocha" ,ruby-mocha)
+ ("ruby-mock-redis" ,ruby-mock-redis)
+ ("ruby-oj" ,ruby-oj)
+ ("ruby-omniauth" ,ruby-omniauth)
+ ("ruby-omniauth-facebook" ,ruby-omniauth-facebook)
+ ("ruby-omniauth-github" ,ruby-omniauth-github)
+ ("ruby-omniauth-google-oauth2" ,ruby-omniauth-google-oauth2)
+ ("ruby-omniauth-twitter" ,ruby-omniauth-twitter)
("ruby-onebox" ,ruby-onebox)
+ ("ruby-parallel-tests" ,ruby-parallel-tests)
+ ("ruby-pg" ,ruby-pg)
+ ("ruby-pry-byebug" ,ruby-pry-byebug)
+ ("ruby-pry-rails" ,ruby-pry-rails)
+ ("ruby-r2" ,ruby-r2)
+ ("ruby-rack-protection" ,ruby-rack-protection)
+ ("ruby-rails-multisite" ,ruby-rails-multisite)
("ruby-railties" ,ruby-railties)
("ruby-rake" ,ruby-rake)
("ruby-redis" ,ruby-redis)
("ruby-redis-namespace" ,ruby-redis-namespace)
+ ("ruby-rinku" ,ruby-rinku)
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-rspec-html-matchers" ,ruby-rspec-html-matchers)
+ ("ruby-rspec-rails" ,ruby-rspec-rails)
+ ("ruby-rswag-specs" ,ruby-rswag-specs)
+ ("ruby-rtlit" ,ruby-rtlit)
+ ("ruby-rubocop-discourse" ,ruby-rubocop-discourse)
+ ("ruby-ruby-prof" ,ruby-ruby-prof)
("ruby-seed-fu" ,ruby-seed-fu)
+ ("ruby-shoulda-matchers" ,ruby-shoulda-matchers)
+ ("ruby-sidekiq" ,ruby-sidekiq)
+ ("ruby-simplecov" ,ruby-simplecov)
("ruby-sprockets-rails" ,ruby-sprockets-rails)
+ ("ruby-test-prof" ,ruby-test-prof)
+ ("ruby-uglifier" ,ruby-uglifier)
+ ("ruby-unf" ,ruby-unf)
+ ("ruby-webmock" ,ruby-webmock)
+ ("ruby-xorcist" ,ruby-xorcist)
))
(native-inputs
`(
@@ -1700,12 +1757,35 @@ and HTML without having to deal with character set issues.")
(base32
"0317sr3nrl51sp844bps71smkrwim3fjn47wdfpbycixnbxspivm"))))
(build-system ruby-build-system)
+ (arguments
+ `(
+ ;#:test-target "spec binary"
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'check)
+ (add-after 'install 'check
+ (assoc-ref %standard-phases 'check))
+ (add-after 'unpack 'adjust-version-requirements
+ (lambda _
+ (substitute* "libv8.gemspec"
+ (("rake-compiler.*") "rake-compiler'\n"))
+ #t))
+ (add-before 'build 'pre-build
+ (lambda _
+ (setenv "HOME" (getcwd))
+ ;(invoke "bundle" "install") ; no network access
+ (invoke "bundle" "exec" "rake" "compile")
+ ))
+ )
+ ))
(native-inputs
`(
("glib" ,(@ (gnu packages glib) glib))
("pkg-config" ,(@ (gnu packages pkg-config) pkg-config))
("python" ,python-2)
+ ("ruby-rake" ,ruby-rake)
("ruby-rake-compiler" ,ruby-rake-compiler)
+ ("ruby-rspec" ,ruby-rspec)
))
(synopsis
"Distributes the V8 JavaScript engine in binary and source forms in order to support fast builds of The Ruby Racer")
@@ -3438,3 +3518,913 @@ braces vs do/end, etc are all ignored. Making this totally rad.")
"http://github.com/thoughtbot/appraisal")
(license license:expat)))
+(define-public ruby-http-accept-language
+ (package
+ (name "ruby-http-accept-language")
+ (version "2.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "http_accept_language" version))
+ (sha256
+ (base32
+ "0d0nlfz9vm4jr1l6q0chx4rp2hrnrfbx3gadc1dz930lbbaz0hq0"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:test-target "spec"
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ (setenv "HOME" (getcwd))
+ (substitute* "cucumber.yml"
+ (("~@") "'not @'"))
+ #t)))))
+ (native-inputs
+ `(
+ ("ruby-aruba" ,ruby-aruba)
+ ("ruby-cucumber" ,ruby-cucumber)
+ ("ruby-guard-rspec" ,ruby-guard-rspec)
+ ("ruby-rack" ,ruby-rack)
+ ("ruby-rack-test" ,ruby-rack-test)
+ ("ruby-rails" ,ruby-rails)
+ ("ruby-rspec" ,ruby-rspec)
+ ))
+ (synopsis
+ "Find out which locale the user preferes by reading the languages they specified in their browser")
+ (description
+ "Find out which locale the user preferes by reading the languages they specified in their browser")
+ (home-page "https://github.com/iain/http_accept_language")
+ (license license:expat)))
+
+(define-public ruby-guard-compat
+ (package
+ (name "ruby-guard-compat")
+ (version "1.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "guard-compat" version))
+ (sha256
+ (base32
+ "1zj6sr1k8w59mmi27rsii0v8xyy2rnsi09nqvwpgj1q10yq1mlis"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:test-target "spec" ; not default, tests not upgraded for newer rubocop versions.
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ (setenv "HOME" (getcwd))
+ #t)))))
+ (native-inputs
+ `(
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-rubocop" ,ruby-rubocop)
+ ))
+ (synopsis
+ "Helps creating valid Guard plugins and testing them")
+ (description
+ "Helps creating valid Guard plugins and testing them")
+ (home-page "https://github.com/guard/guard-compat")
+ (license license:expat)))
+
+(define-public ruby-guard-rspec
+ (package
+ (name "ruby-guard-rspec")
+ (version "4.7.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "guard-rspec" version))
+ (sha256
+ (base32
+ "1jkm5xp90gm4c5s51pmf92i9hc10gslwwic6mvk72g0yplya0yx4"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f)) ; Tests not included in release.
+ (propagated-inputs
+ `(("ruby-guard" ,ruby-guard)
+ ("ruby-guard-compat" ,ruby-guard-compat)
+ ("ruby-rspec" ,ruby-rspec)))
+ (synopsis
+ "Guard::RSpec automatically run your specs (much like autotest).")
+ (description
+ "Guard::RSpec automatically run your specs (much like autotest).")
+ (home-page "https://github.com/guard/guard-rspec")
+ (license license:expat)))
+
+(define-public ruby-aws-sdk-kms
+ (package
+ (name "ruby-aws-sdk-kms")
+ (version "1.42.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "aws-sdk-kms" version))
+ (sha256
+ (base32
+ "00wgf83cdy6z77b2y0ld0aqiidfyldi71hx0z8b73gxjdlbwpq1i"))))
+ (build-system ruby-build-system)
+ (arguments `(#:tests? #f)) ; no tests
+ (propagated-inputs
+ `(("ruby-aws-sdk-core" ,ruby-aws-sdk-core)
+ ("ruby-aws-sigv4" ,ruby-aws-sigv4)))
+ (synopsis
+ "Official AWS Ruby gem for AWS Key Management Service (KMS). This gem is part of the AWS SDK for Ruby.")
+ (description
+ "Official AWS Ruby gem for AWS Key Management Service (KMS). This gem is part of the AWS SDK for Ruby.")
+ (home-page "https://github.com/aws/aws-sdk-ruby")
+ (license license:asl2.0)))
+
+(define-public ruby-jmespath
+ (package
+ (name "ruby-jmespath")
+ (version "1.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "jmespath" version))
+ (sha256
+ (base32
+ "1d4wac0dcd1jf6kc57891glih9w57552zgqswgy74d1xhgnk0ngf"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f)) ; tests not included
+ (synopsis "Implements JMESPath for Ruby")
+ (description "Implements JMESPath for Ruby")
+ (home-page "https://github.com/trevorrowe/jmespath.rb")
+ (license license:asl2.0)))
+
+(define-public ruby-aws-sigv4
+ (package
+ (name "ruby-aws-sigv4")
+ (version "1.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "aws-sigv4" version))
+ (sha256
+ (base32
+ "1ll9382c1x2hp750cilh01h1cycgyhdr4cmmgx23k94hyyb8chv5"))))
+ (build-system ruby-build-system)
+ (arguments `(#:tests? #f)) ; no tests
+ (propagated-inputs
+ `(("ruby-aws-eventstream" ,ruby-aws-eventstream)))
+ (synopsis
+ "Amazon Web Services Signature Version 4 signing library. Generates sigv4 signature for HTTP requests.")
+ (description
+ "Amazon Web Services Signature Version 4 signing library. Generates sigv4 signature for HTTP requests.")
+ (home-page "https://github.com/aws/aws-sdk-ruby")
+ (license license:asl2.0)))
+
+(define-public ruby-aws-partitions
+ (package
+ (name "ruby-aws-partitions")
+ (version "1.428.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "aws-partitions" version))
+ (sha256
+ (base32
+ "13rvpllihvpksf1jqwa2i5vbv2hhb34viaidw4rkxr3dyygkdpj8"))))
+ (build-system ruby-build-system)
+ (arguments `(#:tests? #f)) ; no tests
+ (synopsis
+ "Provides interfaces to enumerate AWS partitions, regions, and services.")
+ (description
+ "This package provides interfaces to enumerate AWS partitions, regions, and services.")
+ (home-page "https://github.com/aws/aws-sdk-ruby")
+ (license license:asl2.0)))
+
+(define-public ruby-aws-eventstream
+ (package
+ (name "ruby-aws-eventstream")
+ (version "1.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "aws-eventstream" version))
+ (sha256
+ (base32
+ "0r0pn66yqrdkrfdin7qdim0yj2x75miyg4wp6mijckhzhrjb7cv5"))))
+ (build-system ruby-build-system)
+ (arguments `(#:tests? #f)) ; no tests
+ (synopsis
+ "Amazon Web Services event stream library. Decodes and encodes binary stream under `vnd.amazon.event-stream` content-type")
+ (description
+ "Amazon Web Services event stream library. Decodes and encodes binary stream under `vnd.amazon.event-stream` content-type")
+ (home-page "https://github.com/aws/aws-sdk-ruby")
+ (license license:asl2.0)))
+
+(define-public ruby-aws-sdk-core
+ (package
+ (name "ruby-aws-sdk-core")
+ (version "3.112.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "aws-sdk-core" version))
+ (sha256
+ (base32
+ "15lynby6r91p9hh5h92pg4jr8xgnjr52px5ax0p0wncdw4vz0skp"))))
+ (build-system ruby-build-system)
+ (arguments `(#:tests? #f)) ; no tests
+ (propagated-inputs
+ `(("ruby-aws-eventstream" ,ruby-aws-eventstream)
+ ("ruby-aws-partitions" ,ruby-aws-partitions)
+ ("ruby-aws-sigv4" ,ruby-aws-sigv4)
+ ("ruby-jmespath" ,ruby-jmespath)))
+ (synopsis
+ "Provides API clients for AWS. This gem is part of the official AWS SDK for Ruby.")
+ (description
+ "This package provides API clients for AWS. This gem is part of the official AWS SDK for Ruby.")
+ (home-page "https://github.com/aws/aws-sdk-ruby")
+ (license license:asl2.0)))
+
+(define-public ruby-aws-sdk-s3
+ (package
+ (name "ruby-aws-sdk-s3")
+ (version "1.88.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "aws-sdk-s3" version))
+ (sha256
+ (base32
+ "01zlv2icx3m0pq94z9fcsp1r9ivdqhfpnpbrv63fpr6m7yqww24y"))))
+ (build-system ruby-build-system)
+ (arguments `(#:tests? #f)) ; no tests
+ (propagated-inputs
+ `(("ruby-aws-sdk-core" ,ruby-aws-sdk-core)
+ ("ruby-aws-sdk-kms" ,ruby-aws-sdk-kms)
+ ("ruby-aws-sigv4" ,ruby-aws-sigv4)))
+ (synopsis
+ "Official AWS Ruby gem for Amazon Simple Storage Service (Amazon S3). This gem is part of the AWS SDK for Ruby.")
+ (description
+ "Official AWS Ruby gem for Amazon Simple Storage Service (Amazon S3). This gem is part of the AWS SDK for Ruby.")
+ (home-page "https://github.com/aws/aws-sdk-ruby")
+ (license license:asl2.0)))
+
+(define-public ruby-aws-sdk-sns
+ (package
+ (name "ruby-aws-sdk-sns")
+ (version "1.38.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "aws-sdk-sns" version))
+ (sha256
+ (base32
+ "0cqri14igfmcxlapbagg0nmy79zzg29awzybv51gl76m3mljbafb"))))
+ (build-system ruby-build-system)
+ (arguments `(#:tests? #f)) ; no tests
+ (propagated-inputs
+ `(("ruby-aws-sdk-core" ,ruby-aws-sdk-core)
+ ("ruby-aws-sigv4" ,ruby-aws-sigv4)))
+ (synopsis
+ "Official AWS Ruby gem for Amazon Simple Notification Service (Amazon SNS). This gem is part of the AWS SDK for Ruby.")
+ (description
+ "Official AWS Ruby gem for Amazon Simple Notification Service (Amazon SNS). This gem is part of the AWS SDK for Ruby.")
+ (home-page "https://github.com/aws/aws-sdk-ruby")
+ (license license:asl2.0)))
+
+(define-public ruby-excon
+ (package
+ (name "ruby-excon")
+ (version "0.79.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/excon/excon")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0cm3rpkzdmq78ni7irw449qrya8wgb6hfzxjwkyq4pkalc21afqb"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'replace-git-ls-files
+ (lambda _
+ (substitute* "excon.gemspec"
+ (("git ls-files -- data/\\* lib/\\*")
+ "find data lib -type f"))
+ #t))
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Don't demand the latest ruby-rack
+ (substitute* "Gemfile"
+ (("rack.*") "rack'\n"))
+ ;; No network connection inside the container.
+ (delete-file "tests/basic_tests.rb")
+ #t))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (setenv "HOME" (getcwd))
+ (invoke "bundle" "exec" "shindont")
+ (invoke "bundle" "exec" "rake" "spec[progress]"))
+ #t))
+ )))
+ (native-inputs
+ `(
+ ("ruby-activesupport" ,ruby-activesupport)
+ ("ruby-delorean" ,ruby-delorean)
+ ("ruby-eventmachine" ,ruby-eventmachine)
+ ("ruby-open4" ,ruby-open4)
+ ("ruby-puma" ,ruby-puma)
+ ("ruby-rack" ,ruby-rack)
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-rubocop" ,ruby-rubocop)
+ ("ruby-shindo" ,ruby-shindo)
+ ("ruby-sinatra" ,ruby-sinatra)
+ ("ruby-sinatra-contrib" ,ruby-sinatra-contrib)
+ ("ruby-unicorn" ,ruby-unicorn)
+ ))
+ (synopsis "EXtended http(s) CONnections")
+ (description "EXtended http(s) CONnections")
+ (home-page "https://github.com/excon/excon")
+ (license license:expat)))
+
+(define-public ruby-chronic
+ (package
+ (name "ruby-chronic")
+ (version "0.10.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "chronic" version))
+ (sha256
+ (base32
+ "1hrdkn4g8x7dlzxwb1rfgr8kw3bp4ywg5l4y4i9c2g5cwv62yvvn"))))
+ (build-system ruby-build-system)
+ (synopsis
+ "Chronic is a natural language date/time parser written in pure Ruby.")
+ (description
+ "Chronic is a natural language date/time parser written in pure Ruby.")
+ (home-page "http://github.com/mojombo/chronic")
+ (license license:expat)))
+
+(define-public ruby-delorean
+ (package
+ (name "ruby-delorean")
+ (version "2.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "delorean" version))
+ (sha256
+ (base32
+ "0k39ix0a9rf4fd05ncml4h9r29dzwgzdbhp01gp67baid6adxwf4"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f)) ; tests not included
+ (propagated-inputs
+ `(("ruby-chronic" ,ruby-chronic)))
+ (synopsis
+ "Delorean lets you travel in time with Ruby by mocking Time.now")
+ (description
+ "Delorean lets you travel in time with Ruby by mocking Time.now")
+ (home-page "http://github.com/bebanjo/delorean")
+ (license license:expat)))
+
+(define-public ruby-sinatra-contrib
+ (package
+ (name "ruby-sinatra-contrib")
+ (version "2.0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "sinatra-contrib" version))
+ (sha256
+ (base32
+ "1mmrfm4pqh98f3irjpkvfpazhcx6q42bnx6bbms9dqvmck3mid28"))))
+ (build-system ruby-build-system)
+ (propagated-inputs
+ `(("ruby-backports" ,ruby-backports)
+ ("ruby-multi-json" ,ruby-multi-json)
+ ("ruby-mustermann" ,ruby-mustermann)
+ ("ruby-rack-protection" ,ruby-rack-protection)
+ ("ruby-sinatra" ,ruby-sinatra)
+ ("ruby-tilt" ,ruby-tilt)))
+ (native-inputs
+ `(
+ ("ruby-rspec" ,ruby-rspec)
+ ))
+ (synopsis "Collection of useful Sinatra extensions")
+ (description
+ "Collection of useful Sinatra extensions")
+ (home-page "http://sinatrarb.com/contrib/")
+ (license license:expat)))
+
+(define-public ruby-raindrops
+ (package
+ (name "ruby-raindrops")
+ (version "0.19.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "raindrops" version))
+ (sha256
+ (base32
+ "0zjja00mzgx2lddb7qrn14k7qrnwhf4bpmnlqj78m1pfxh7svync"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f ; not clear how to run tests
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "ruby" "setup.rb" "tests"))
+ #t)))))
+ (synopsis "real-time stats for preforking Rack servers")
+ (description
+ "raindrops is a real-time stats toolkit to show statistics for Rack HTTP
+servers. It is designed for preforking servers such as unicorn, but
+should support any Rack HTTP server on platforms supporting POSIX shared
+memory. It may also be used as a generic scoreboard for sharing atomic
+counters across multiple processes.")
+ (home-page "https://yhbt.net/raindrops/")
+ (license license:lgpl2.1+)))
+
+(define-public ruby-kgio
+ (package
+ (name "ruby-kgio")
+ (version "2.11.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "kgio" version))
+ (sha256
+ (base32
+ "0ai6bzlvxbzpdl466p1qi4dlhx8ri2wcrp6x1l19y3yfs3a29rng"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f ; not clear how to run tests
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "ruby" "setup.rb" "tests"))
+ #t)))))
+ (synopsis "kinder, gentler I/O for Ruby")
+ (description
+ "This is a legacy project, do not use it for new projects. Ruby
+2.3 and later should make this obsolete. kgio provides
+non-blocking I/O methods for Ruby without raising exceptions on
+EAGAIN and EINPROGRESS.
+")
+ (home-page "https://yhbt.net/kgio/")
+ (license #f)))
+
+(define-public ruby-unicorn
+ (package
+ (name "ruby-unicorn")
+ (version "5.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "unicorn" version))
+ (sha256
+ (base32
+ "0ig48f4xhrssq5d11vkc41k7nj6pbv2jh1f8k5gfskfd469mcc2y"))))
+ (build-system ruby-build-system)
+ (propagated-inputs
+ `(("ruby-kgio" ,ruby-kgio)
+ ("ruby-raindrops" ,ruby-raindrops)))
+ (synopsis
+ "unicorn is an HTTP server for Rack applications designed to only serve
+fast clients on low-latency, high-bandwidth connections and take
+advantage of features in Unix/Unix-like kernels. Slow clients should
+only be served by placing a reverse proxy capable of fully buffering
+both the the request and response in between unicorn and slow clients.")
+ (description
+ "unicorn is an HTTP server for Rack applications designed to only serve
+fast clients on low-latency, high-bandwidth connections and take
+advantage of features in Unix/Unix-like kernels. Slow clients should
+only be served by placing a reverse proxy capable of fully buffering
+both the the request and response in between unicorn and slow clients.")
+ (home-page "https://yhbt.net/unicorn/")
+ (license (list #f #f))))
+
+(define-public ruby-pry-rails
+ (package
+ (name "ruby-pry-rails")
+ (version "0.3.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "pry-rails" version))
+ (sha256
+ (base32
+ "1cf4ii53w2hdh7fn8vhqpzkymmchjbwij4l3m7s6fsxvb9bn51j6"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f ; not clear what the test suite wants
+ #:test-target "appraisal" ; as per the Rakefile
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ (setenv "HOME" (getcwd))
+ #t)))))
+ (propagated-inputs
+ `(("ruby-pry" ,ruby-pry)))
+ (native-inputs
+ `(
+ ("ruby-appraisal" ,ruby-appraisal)
+ ("ruby-minitest" ,ruby-minitest)
+ ))
+ (synopsis "Use Pry as your rails console")
+ (description "Use Pry as your rails console")
+ (home-page "https://github.com/rweng/pry-rails")
+ (license license:expat)))
+
+(define-public ruby-r2
+ (package
+ (name "ruby-r2")
+ (version "0.2.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "r2" version))
+ (sha256
+ (base32
+ "0wk0p55zp3l96xy5ps28b33dn5z0jwsjl74bwfdn6z81pzjs5sfk"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:test-target "default"))
+ (native-inputs
+ `(
+ ("ruby-rspec" ,ruby-rspec)
+ ))
+ (synopsis
+ "CSS flipper for right-to-left processing. A Ruby port of https://github.com/ded/r2")
+ (description
+ "CSS flipper for right-to-left processing. A Ruby port of https://github.com/ded/r2")
+ (home-page "https://github.com/mzsanford/R2rb")
+ (license #f)))
+
+(define-public ruby-cbor
+ (package
+ (name "ruby-cbor")
+ (version "0.5.9.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "cbor" version))
+ (sha256
+ (base32
+ "0511idr8xps9625nh3kxr68sdy6l3xy2kcz7r57g47fxb1v18jj3"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:test-target "spec"))
+ (native-inputs
+ `(
+ ("ruby-rake-compiler" ,ruby-rake-compiler)
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-yard" ,ruby-yard)
+ ))
+ (synopsis
+ "CBOR is a library for the CBOR binary object representation format, based on Sadayuki Furuhashi's MessagePack library.")
+ (description
+ "CBOR is a library for the CBOR binary object representation format, based on Sadayuki Furuhashi's MessagePack library.")
+ (home-page "http://cbor.io/")
+ (license #f)))
+
+(define-public ruby-openssl
+ (package
+ (name "ruby-openssl")
+ (version "2.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ruby/openssl")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "01xigwxpwha9hj8r2synkl6c7xlhs02f27qv98a1b7cbhgqqs6n3"))))
+ (build-system ruby-build-system)
+ (inputs
+ `(
+ ("openssl" ,openssl)
+ ))
+ (native-inputs
+ `(
+ ("ruby-rake-compiler" ,ruby-rake-compiler)
+ ))
+ (synopsis "It wraps the OpenSSL library.")
+ (description "It wraps the OpenSSL library.")
+ (home-page "https://github.com/ruby/openssl")
+ (license license:ruby)))
+
+(define-public ruby-openssl-signature-algorithm
+ (package
+ (name "ruby-openssl-signature-algorithm")
+ (version "1.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri
+ "openssl-signature_algorithm"
+ version))
+ (sha256
+ (base32
+ "173p9agv45hj62fdgl9bzqr9f6xg7hi2sf5iyd3ahiwbv220x332"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f ; cannot load such file -- spec_helper
+ #:test-target "spec" ; not default, don't care about rubocop output
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ (setenv "HOME" (getcwd))
+ #t)))))
+ (propagated-inputs
+ `(("ruby-openssl" ,ruby-openssl)))
+ (native-inputs
+ `(
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-rubocop" ,ruby-rubocop)
+ ))
+ (synopsis
+ "ECDSA, EdDSA, RSA-PSS and RSA-PKCS#1 algorithms for ruby")
+ (description
+ "ECDSA, EdDSA, RSA-PSS and RSA-PKCS#1 algorithms for ruby")
+ (home-page "https://github.com/cedarcode/openssl-signature_algorithm")
+ (license license:asl2.0)))
+
+(define-public ruby-cose
+ (package
+ (name "ruby-cose")
+ (version "1.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "cose" version))
+ (sha256
+ (base32
+ "1gx239d2fracq9az74wfdwmp5zm7zpzkcgchwnv2ng33d8r33p3m"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f ; cannot load such file -- spec_helper
+ #:test-target "spec" ; not default, don't care about rubocop output
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ (setenv "HOME" (getcwd))
+ #t)))))
+ (propagated-inputs
+ `(("ruby-cbor" ,ruby-cbor)
+ ("ruby-openssl-signature-algorithm" ,ruby-openssl-signature-algorithm)))
+ (native-inputs
+ `(
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-rubocop" ,ruby-rubocop)
+ ("ruby-rubocop-performance" ,ruby-rubocop-performance)
+ ))
+ (synopsis
+ "Ruby implementation of RFC 8152 CBOR Object Signing and Encryption (COSE)")
+ (description
+ "Ruby implementation of RFC 8152 CBOR Object Signing and Encryption (COSE)")
+ (home-page "https://github.com/cedarcode/cose-ruby")
+ (license license:expat)))
+
+(define-public ruby-rtlit
+ (package
+ (name "ruby-rtlit")
+ (version "0.0.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "rtlit" version))
+ (sha256
+ (base32
+ "0srfh7cl95srjiwbyc9pmn3w739zlvyj89hyj0bm7g92zrsd27qm"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f)) ; tests don't want to run
+ (native-inputs
+ `(
+ ("ruby-rake", ruby-rake)
+ ))
+ (synopsis
+ "Converts CSS files from left-to-right to right-to-left")
+ (description
+ "Converts CSS files from left-to-right to right-to-left")
+ (home-page "https://github.com/zohararad/rtlit")
+ (license license:expat)))
+
+(define-public ruby-test-prof
+ (package
+ (name "ruby-test-prof")
+ (version "1.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/test-prof/test-prof")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "092q3m56843yrd94xby2a29vg8kca4lirgvqlkmdjyjckmi3qdzr"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f ; seems to need running database
+ #:test-target "spec" ; not default, don't care about rubocop output
+ ;; cannot load such file -- standard/cop/semantic_blocks
+ ))
+ (native-inputs
+ `(
+ ("ruby-activerecord" ,ruby-activerecord)
+ ("ruby-fabrication" ,ruby-fabrication)
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-rubocop" ,ruby-rubocop)
+ ("ruby-sqlite3" ,ruby-sqlite3-1.3)
+ ))
+ (synopsis
+ "
+ Ruby applications tests profiling tools.
+
+ Contains tools to analyze factories usage, integrate with Ruby profilers,
+ profile your examples using ActiveSupport notifications (if any) and
+ statically analyze your code with custom RuboCop cops.
+ ")
+ (description
+ "
+ Ruby applications tests profiling tools.
+
+ Contains tools to analyze factories usage, integrate with Ruby profilers,
+ profile your examples using ActiveSupport notifications (if any) and
+ statically analyze your code with custom RuboCop cops.
+ ")
+ (home-page "https://test-prof.evilmartians.io/")
+ (license license:expat)))
+
+(define-public ruby-fabrication
+ (package
+ (name "ruby-fabrication")
+ (version "2.21.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "fabrication" version))
+ (sha256
+ (base32
+ "1pdrl55xf76pbc5kjzp7diawxxvgbk2cm38532in6df823431n6z"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f)) ; TODO later
+ (synopsis
+ "Fabrication is an object generation framework for ActiveRecord, Mongoid, DataMapper, Sequel, or any other Ruby object.")
+ (description
+ "Fabrication is an object generation framework for ActiveRecord, Mongoid, DataMapper, Sequel, or any other Ruby object.")
+ (home-page "http://fabricationgem.org")
+ (license license:expat)))
+
+(define-public ruby-ruby2-keywords
+ (package
+ (name "ruby-ruby2-keywords")
+ (version "0.0.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ruby/ruby2_keywords")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1fz81nw92cvpi1h99q1pvsnkdkpmp40jvvpkn1jnjbx9by04bw45"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:test-target "default"))
+ (synopsis
+ "Shim library for Module#ruby2_keywords")
+ (description
+ "Shim library for Module#ruby2_keywords")
+ (home-page "https://github.com/ruby/ruby2_keywords")
+ (license (list license:ruby license:bsd-2))))
+
+(define-public ruby-mock-redis
+ (package
+ (name "ruby-mock-redis")
+ (version "0.27.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "mock_redis" version))
+ (sha256
+ (base32
+ "0fhwhp0w2n79k9ibmqhq09m88rp2jmr7dknx9ibn84wf7r8a3a8k"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f ; tests need a running redis server.
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "rspec"))
+ #t)))))
+ (propagated-inputs
+ `(("ruby-ruby2-keywords" ,ruby-ruby2-keywords)))
+ (native-inputs
+ `(
+ ("ruby-redis" ,ruby-redis)
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-rspec-its" ,ruby-rspec-its)
+ ("ruby-simplecov" ,ruby-simplecov)
+ ("ruby-timecop" ,ruby-timecop)
+ ))
+ (synopsis
+ "Instantiate one with `redis = MockRedis.new` and treat it like you would a normal Redis object. It supports all the usual Redis operations.")
+ (description
+ "Instantiate one with `redis = MockRedis.new` and treat it like you would a normal Redis object. It supports all the usual Redis operations.")
+ (home-page "https://github.com/sds/mock_redis")
+ (license license:expat)))
+
+(define-public ruby-certified
+ (package
+ (name "ruby-certified")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "certified" version))
+ (sha256
+ (base32
+ "1706p6p0a8adyvd943af2a3093xakvislgffw3v9dvp7j07dyk5a"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f)) ; no rakefile or tests
+ (synopsis
+ "Ensure net/https uses OpenSSL::SSL::VERIFY_PEER to verify SSL certificates and provides certificate bundle in case OpenSSL cannot find one")
+ (description
+ "Ensure net/https uses OpenSSL::SSL::VERIFY_PEER to verify SSL certificates and provides certificate bundle in case OpenSSL cannot find one")
+ (home-page "https://github.com/stevegraham/certified")
+ (license license:expat)))
+
+(define-public ruby-rspec-html-matchers
+ (package
+ (name "ruby-rspec-html-matchers")
+ (version "0.9.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "rspec-html-matchers" version))
+ (sha256
+ (base32
+ "0883rqv77n2wawnk5lp3la48l7pckyz8l013qddngzmksi5p1v3f"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f)) ; no tests in gem release
+ (propagated-inputs
+ `(("ruby-nokogiri" ,ruby-nokogiri)
+ ("ruby-rspec" ,ruby-rspec)))
+ (synopsis
+ "Nokogiri based 'have_tag' and 'with_tag' matchers for rspec 3. Does not depend on assert_select matcher, provides useful error messages.
+")
+ (description
+ "Nokogiri based 'have_tag' and 'with_tag' matchers for rspec 3. Does not depend on assert_select matcher, provides useful error messages.
+")
+ (home-page "https://github.com/kucaahbe/rspec-html-matchers")
+ (license license:expat)))
+
+(define-public ruby-rswag-specs
+ (package
+ (name "ruby-rswag-specs")
+ (version "2.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "rswag-specs" version))
+ (sha256
+ (base32
+ "1dma3j5vfjhyclg8y0gsp44vs4wn9chf4jgfhc9r6ws018xrbxzd"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f)) ; no tests in Rakefile
+ (propagated-inputs
+ `(("ruby-activesupport" ,ruby-activesupport)
+ ("ruby-json-schema" ,ruby-json-schema)
+ ("ruby-railties" ,ruby-railties)))
+ (synopsis
+ "Simplify API integration testing with a succinct rspec DSL and generate OpenAPI specification files directly from your rspecs. More about the OpenAPI initiative here: http://spec.openapis.org/")
+ (description
+ "Simplify API integration testing with a succinct rspec DSL and generate OpenAPI specification files directly from your rspecs. More about the OpenAPI initiative here: http://spec.openapis.org/")
+ (home-page "https://github.com/rswag/rswag")
+ (license license:expat)))
+