Subject: [bug#54539] [PATCH v2 26/30] gnu: ruby: Autoload unless used by Guix.

From: Maxime Devos <[email-masked]>
Date: Sat, 3 Sep 2022 18:43:28 +0200

See first commit in the series for the procedure.
This helps with, but is not sufficient for, avoiding Java.
---
 gnu/packages/ruby.scm | 64 +++++++++++++++++++++----------------------
 1 file changed, 31 insertions(+), 33 deletions(-)

diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index cc95bd8d6e..f4883db0ab 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -48,45 +48,43 @@
 (define-module (gnu packages ruby)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (gnu packages)
-  #:use-module (gnu packages base)
-  #:use-module (gnu packages bison)
-  #:use-module (gnu packages c)
-  #:use-module (gnu packages check)
-  #:use-module (gnu packages compression)
-  #:use-module (gnu packages crypto)
-  #:use-module (gnu packages curl)
-  #:use-module (gnu packages databases)
-  #:use-module (gnu packages dbm)
-  #:use-module (gnu packages rails)
-  #:use-module (gnu packages readline)
-  #:use-module (gnu packages autotools)
-  #:use-module (gnu packages haskell-xyz)
-  #:use-module (gnu packages java)
-  #:use-module (gnu packages libffi)
-  #:use-module (gnu packages libidn)
-  #:use-module (gnu packages linux)
-  #:use-module (gnu packages lsof)
-  #:use-module (gnu packages man)
-  #:use-module (gnu packages maths)
-  #:use-module (gnu packages ncurses)
-  #:use-module (gnu packages networking)
-  #:use-module (gnu packages node)
-  #:use-module (gnu packages protobuf)
-  #:use-module (gnu packages python)
-  #:use-module (gnu packages python-xyz)
-  #:use-module (gnu packages ragel)
-  #:use-module (gnu packages rsync)
-  #:use-module (gnu packages sqlite)
-  #:use-module (gnu packages tls)
-  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages base) ; required by "guix build -d guix"
+  #:autoload (gnu packages bison) (bison)
+  #:autoload (gnu packages c) (unifdef)
+  #:use-module (gnu packages compression) ; required by "guix build -d guix"
+  #:autoload (gnu packages crypto) (libsodium)
+  #:autoload (gnu packages curl) (curl)
+  #:use-module (gnu packages databases) ; required by "guix build -d guix"
+  #:use-module (gnu packages dbm) ; required by "guix build -d guix"
+  #:use-module (gnu packages rails) ; required by "guix build -d guix"
+  #:use-module (gnu packages readline) ; required by "guix build -d guix"
+  #:use-module (gnu packages autotools) ; required by "guix build -d guix"
+  #:autoload (gnu packages haskell-xyz) (pandoc)
+  #:autoload (gnu packages java) (icedtea)
+  #:use-module (gnu packages libffi) ; required by "guix build -d guix"
+  #:use-module (gnu packages libidn) ; required by "guix build -d guix"
+  #:use-module (gnu packages linux) ; required by "guix build -d guix"
+  #:use-module (gnu packages lsof) ; required by "guix build -d guix"
+  #:autoload (gnu packages man) (txt2man)
+  #:autoload (gnu packages maths) (itex2mml ruby-asciimath)
+  #:autoload (gnu packages ncurses) (ncurses)
+  #:autoload (gnu packages networking) (czmq zeromq)
+  #:autoload (gnu packages node) (node)
+  #:autoload (gnu packages protobuf) (ruby-protobuf-cucumber)
+  #:autoload (gnu packages python-xyz) (python-ipython python-pygments)
+  #:use-module (gnu packages ragel) ; required by "guix build -d guix"
+  #:autoload (gnu packages rsync) (rsync)
+  #:use-module (gnu packages sqlite) ; required by "guix build -d guix"
+  #:use-module (gnu packages tls) ; required by "guix build -d guix"
+  #:autoload (gnu packages version-control) (git libgit2)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (guix gexp)
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
-  #:use-module (gnu packages xml)
-  #:use-module (gnu packages web)
+  #:use-module (gnu packages xml) ; required by "guix build -d guix"
+  #:autoload (gnu packages web) (gumbo-parser libsass)
   #:use-module (guix build-system ruby)
   #:use-module ((srfi srfi-1) #:select (alist-delete)))
 
-- 
2.37.2