Subject: [bug#76675] [PATCH ruby-team] gnu: Add ruby-gems.

From: gemmaro <[email-masked]>
Date: Sun, 2 Mar 2025 17:25:45 +0900

* gnu/packages/ruby-xyz.scm (ruby-gems): New variable.

Change-Id: I5e9a86c26770c401ff0f690a69befe6861d4937f
---
 gnu/packages/ruby-xyz.scm | 36 +++++++++++++++++++++++++++++++++++-
 1 file changed, 35 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/ruby-xyz.scm b/gnu/packages/ruby-xyz.scm
index 688bf33459..d0700f9def 100644
--- a/gnu/packages/ruby-xyz.scm
+++ b/gnu/packages/ruby-xyz.scm
@@ -1,4 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2025 gemmaro <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -21,7 +22,8 @@ (define-module (gnu packages ruby-xyz)
   #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module (guix packages)
-  #:use-module (gnu packages))
+  #:use-module (gnu packages)
+  #:use-module (gnu packages ruby))
 
 ;;; Commentary:
 ;;;
@@ -30,6 +32,38 @@ (define-module (gnu packages ruby-xyz)
 ;;; Code:
 
 
+(define-public ruby-gems
+  (package
+    (name "ruby-gems")
+    (version "1.3.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/rubygems/gems")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0ridcy3k5klh59x625vdqjrv0ylwxzn0qfq5g50fsyavcbch5df8"))))
+    (build-system ruby-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (replace 'check
+            (lambda* (#:key tests? #:allow-other-keys)
+              (when tests?
+                (invoke "rspec"))))))) ;avoids unnecessary dependencies
+    (native-inputs (list ruby-coveralls ruby-rspec ruby-simplecov ruby-webmock))
+    (synopsis "Ruby wrapper for the RubyGems.org API")
+    (description
+     "This gem is a wrapper for the RubyGems.org API.  It allows developers to
+interact with RubyGems.org programmatically using Ruby and is focused on
+providing easy access to functionalities such as searching for gems,
+retrieving gem information, and managing gem dependencies.")
+    (home-page "https://github.com/rubygems/gems")
+    (license license:expat)))
+
 ;;;
 ;;; Avoid adding new packages to the end of this file. To reduce the chances
 ;;; of a merge conflict, place them above in alphabetic order.

base-commit: 3caa95c691945b035b3851d08fd748600a0676da
-- 
2.48.1