Subject: Re: [bug#78676] Request for merging "ruby-team" branch

From: Christopher Baines <[email-masked]>
Date: Thu, 19 Jun 2025 02:01:03 +0100

Andreas Enge <[email-masked]> writes:

>> In other news, I think we can avoid changing [email-masked] on this branch,
>> which should avoid affecting some texlive and related packages. I'll try
>> to make this change either later today or tomorrow.

I've gone ahead and pushed this now, tweaking a few commits to achieve
the following diff, avoiding changing ruby-hydra-minimal/pinned and
avoiding changing ruby-2.7, which I think removes the majority of the
affected packages on the ruby-team branch. At least this is what guix
weather suggests, we'll see what the data service says.

modified   gnu/packages/ruby-xyz.scm
@@ -3531,13 +3531,28 @@ (define-public ruby-hydra-minimal
 
 ;; Pinned variant for use by texlive
 (define-public ruby-hydra-minimal/pinned
-  (hidden-package
-   (package
-     (inherit ruby-hydra-minimal)
-     (arguments
-      (list
-       #:tests? #f
-       #:ruby ruby-2.7)))))
+  (let ((commit "5abfa378743756ae4d9306cc134bcc482f5c9525")
+        (revision "0"))
+    (hidden-package
+     (package
+       (inherit ruby-hydra-minimal)
+       (version (git-version "0.0" revision commit))
+       (source (origin
+                 (method git-fetch)
+                 (uri (git-reference
+                       (url "https://github.com/hyphenation/hydra")
+                       (commit commit)))
+                 (file-name (git-file-name "ruby-hydra-minimal" version))
+                 ;; byebug is a non-essential debugging utility that brings in
+                 ;; many dependencies.
+                 (patches (search-patches "ruby-hydra-minimal-no-byebug.patch"))
+                 (sha256
+                  (base32
+                   "1cik398l2765y3d9sdhjzki3303hkry58ac6jlkiy7iy62nm529f"))))
+       (arguments
+        (list
+         #:tests? #f
+         #:ruby ruby-2.7))))))
 
 (define-public ruby-hydra
   (package
modified   gnu/packages/ruby.scm
@@ -202,7 +202,12 @@ (define-public ruby-2.7
                            "/ruby-" version ".tar.gz"))
        (sha256
         (base32
-         "182vni66djmiqagwzfsd0za7x9k3zag43b88c590aalgphybdnn2"))))
+         "182vni66djmiqagwzfsd0za7x9k3zag43b88c590aalgphybdnn2"))
+       (modules '((guix build utils)))
+       (snippet `(begin
+                   ;; Remove bundled libffi
+                   (delete-file-recursively "ext/fiddle/libffi-3.2.1")
+                   #t))))
     (build-system gnu-build-system)
     (arguments
      `(#:test-target "test"
@@ -230,7 +235,8 @@ (define-public ruby-2.7
                             "test/ruby/test_process.rb"
                             "test/ruby/test_system.rb"
                             "tool/rbinstall.rb")
-               (("/bin/sh") (which "sh")))))
+               (("/bin/sh") (which "sh")))
+             #t))
          ,@(if (system-hurd?)
                '((add-after 'unpack 'skip-tests
                    (lambda _