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

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

See first commit in the series for the procedure.
---
 gnu/packages/admin.scm | 185 +++++++++++++++++++++++------------------
 1 file changed, 104 insertions(+), 81 deletions(-)

diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index b35d50ff56..8f0fe1987f 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -87,87 +87,110 @@ (define-module (gnu packages admin)
   #:use-module (guix packages)
   #:use-module (guix utils)
   #:use-module (gnu packages)
-  #:use-module (gnu packages algebra)
-  #:use-module (gnu packages autogen)
-  #:use-module (gnu packages autotools)
-  #:use-module (gnu packages base)
-  #:use-module (gnu packages bash)
-  #:use-module (gnu packages bison)
-  #:use-module (gnu packages boost)
-  #:use-module (gnu packages c)
-  #:use-module (gnu packages check)
-  #:use-module (gnu packages compression)
-  #:use-module (gnu packages crates-io)
-  #:use-module (gnu packages cross-base)
-  #:use-module (gnu packages crypto)
-  #:use-module (gnu packages cryptsetup)
-  #:use-module (gnu packages curl)
-  #:use-module (gnu packages cyrus-sasl)
-  #:use-module (gnu packages dns)
-  #:use-module (gnu packages elf)
-  #:use-module (gnu packages file)
-  #:use-module (gnu packages flex)
-  #:use-module (gnu packages freedesktop)
-  #:use-module (gnu packages gawk)
-  #:use-module (gnu packages gettext)
-  #:use-module (gnu packages gl)
-  #:use-module (gnu packages glib)
-  #:use-module (gnu packages gnome)
-  #:use-module (gnu packages gnupg)
-  #:use-module (gnu packages golang)
-  #:use-module (gnu packages groff)
-  #:use-module (gnu packages gtk)
-  #:use-module (gnu packages guile)
-  #:use-module (gnu packages guile-xyz)
-  #:use-module (gnu packages hurd)
-  #:use-module (gnu packages image)
-  #:use-module (gnu packages imagemagick)
-  #:use-module (gnu packages inkscape)
-  #:use-module (gnu packages kerberos)
-  #:use-module (gnu packages libbsd)
-  #:use-module (gnu packages libftdi)
-  #:use-module (gnu packages libunwind)
-  #:use-module (gnu packages libusb)
-  #:use-module (gnu packages linux)
-  #:use-module (gnu packages lua)
-  #:use-module (gnu packages m4)
-  #:use-module (gnu packages mail)
-  #:use-module (gnu packages man)
-  #:use-module (gnu packages mcrypt)
-  #:use-module (gnu packages mpi)
-  #:use-module (gnu packages ncurses)
-  #:use-module (gnu packages networking)
-  #:use-module (gnu packages openldap)
-  #:use-module (gnu packages patchutils)
-  #:use-module (gnu packages pciutils)
-  #:use-module (gnu packages pcre)
-  #:use-module (gnu packages perl)
-  #:use-module (gnu packages perl-check)
-  #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages polkit)
-  #:use-module (gnu packages popt)
-  #:use-module (gnu packages python)
-  #:use-module (gnu packages python-crypto)
-  #:use-module (gnu packages python-web)
-  #:use-module (gnu packages python-xyz)
-  #:use-module (gnu packages qt)
-  #:use-module (gnu packages readline)
-  #:use-module (gnu packages ruby)
-  #:use-module (gnu packages selinux)
-  #:use-module (gnu packages serialization)
-  #:use-module (gnu packages sqlite)
-  #:use-module (gnu packages ssh)
-  #:use-module (gnu packages sphinx)
-  #:use-module (gnu packages tcl)
-  #:use-module (gnu packages terminals)
-  #:use-module (gnu packages texinfo)
-  #:use-module (gnu packages time)
-  #:use-module (gnu packages tls)
-  #:use-module (gnu packages version-control)
-  #:use-module (gnu packages web)
-  #:use-module (gnu packages xdisorg)
-  #:use-module (gnu packages xml)
-  #:use-module (gnu packages xorg))
+  #:autoload (gnu packages algebra) (bc)
+  #:autoload (gnu packages autotools)
+  (autoconf autoconf-archive automake config libtool)
+  #:use-module (gnu packages base) ; required by "guix build -d guix"
+  #:autoload (gnu packages bash) (bash-minimal bash bats)
+  #:autoload (gnu packages bison) (bison)
+  #:autoload (gnu packages boost) (boost)
+  #:autoload (gnu packages c) (libhx)
+  #:autoload (gnu packages check)
+  (check python-mock python-nose python-hypothesis python-mock python-pytest
+         python-pytest-forked python-pytest-mock python-pytest-xdist)
+  #:autoload (gnu packages compression) (zlib xz lzip gzip)
+  #:autoload (gnu packages crates-io)
+  (rust-nix-0.19 rust-pam-sys-0.5 rust-rpassword-5 rust-users-0.11 rust-serde-1
+                 rust-serde-json-1 rust-libc-0.2 rust-tokio-1 rust-getopts-0.2
+                 rust-thiserror-1 rust-async-trait-0.1 rust-enquote-1)
+  #:autoload (gnu packages crypto) (keyutils encfs)
+  #:autoload (gnu packages cryptsetup) (cryptsetup)
+  #:autoload (gnu packages curl) (curl)
+  #:autoload (gnu packages cyrus-sasl) (cyrus-sasl)
+  #:autoload (gnu packages dns) (isc-bind)
+  #:autoload (gnu packages elf) (elfutils libelf)
+  #:autoload (gnu packages file) (file)
+  #:autoload (gnu packages flex) (flex)
+  #:autoload (gnu packages freedesktop) (elogind)
+  #:autoload (gnu packages gawk) (gawk)
+  #:autoload (gnu packages gettext) (gettext-minimal)
+  #:autoload (gnu packages gl) (mesa-utils)
+  #:autoload (gnu packages glib)
+  (dbus glib intltool dbus-glib python-pygobject)
+  #:autoload (gnu packages gnome) (libnotify upower)
+  #:autoload (gnu packages gnupg) (libgcrypt libgpg-error gnupg)
+  #:autoload (gnu packages golang)
+  (go go-golang-org-x-text go-github.com-ulikunitz-xz)
+  #:autoload (gnu packages groff) (groff)
+  #:autoload (gnu packages gtk) (cairo gtk+ gtk+-2 gtk-doc)
+  #:autoload (gnu packages guile)
+  (guile-3.0 guile-readline guile-2.2 guile-2.0)
+  #:autoload (gnu packages guile-xyz) (guile-fibers-1.1 guile2.2-fibers)
+  #:autoload (gnu packages hurd) (hurd-target?)
+  #:autoload (gnu packages image) (libpng)
+  #:autoload (gnu packages imagemagick) (imagemagick)
+  #:autoload (gnu packages inkscape) (inkscape/stable)
+  #:autoload (gnu packages kerberos) (mit-krb5)
+  #:autoload (gnu packages libbsd) (libbsd)
+;  #:use-module (gnu packages libftdi)
+  #:autoload (gnu packages libunwind) (libunwind)
+  #:autoload (gnu packages libusb) (libusb)
+  #:autoload (gnu packages linux)
+  (eudev fuse iproute ipset iptables i2c-tools-3 kmod libaio libcap libnl
+         linux-pam lm-sensors lvm2 mdadm net-tools nftables procps usbutils
+         util-linux)
+  #:autoload (gnu packages lua) (lua)
+  #:autoload (gnu packages m4) (m4)
+  #:autoload (gnu packages mail) (mailutils sendmail)
+  #:autoload (gnu packages man) (help2man scdoc)
+  #:autoload (gnu packages mcrypt) (libmhash)
+  #:autoload (gnu packages mpi) (openmpi)
+  #:autoload (gnu packages ncurses) (ncurses)
+  #:autoload (gnu packages networking) (whois)
+  #:autoload (gnu packages openldap) (openldap)
+  #:autoload (gnu packages patchutils) (quilt)
+  #:autoload (gnu packages pciutils) (pciutils)
+  #:autoload (gnu packages pcre) (pcre pcre2)
+  #:autoload (gnu packages perl)
+  (perl perl-cpan-changes perl-cpanel-json-xs perl-json-xs perl-exception-class
+        perl-file-which perl-file-slurp perl-json-xs perl-module-build
+        perl-readonly perl-sort-naturally perl-time-hires perl-try-tiny
+        perltidy)
+  #:autoload (gnu packages perl-check)
+  (perl-test-differences perl-test-distmanifest perl-test-perltidy perl-test-pod
+                         perl-test-pod-coverage perl-test-harness perl-test-trap)
+  #:autoload (gnu packages pkg-config) (pkg-config)
+  #:autoload (gnu packages polkit) (polkit)
+  #:autoload (gnu packages python)
+  (python python-2 python-minimal-wrapper python-wrapper)
+  #:autoload (gnu packages python-crypto)
+  (python-paramiko python-passlib python-cryptography python-pycrypto)
+  #:autoload (gnu packages python-xyz)
+  (python-colorama python-docutils python-future python-hypy-utils python-jinja2
+                   python-packaging python-decorator python-distro python-pexpect
+                   python-psutil python-pygments python-pyyaml python-pyinotify
+                   python-resolvelib-0.5 python-six python-tabulate
+                   python-typing-extensions python-urwid python-xlib)
+  #:autoload (gnu packages qt) (qtbase-5 qtsvg-5)
+  #:autoload (gnu packages readline) (readline)
+  #:autoload (gnu packages ruby) (ruby-hocon ruby-sys-filesystem ruby-thor)
+  #:autoload (gnu packages selinux) (libselinux)
+  #:autoload (gnu packages serialization) (python-ruamel.yaml)
+  #:autoload (gnu packages sqlite) (sqlite)
+  #:autoload (gnu packages ssh) (openssh sshpass)
+  #:autoload (gnu packages sphinx) (python-sphinx)
+  #:autoload (gnu packages tcl) (perl-tk expect)
+  #:autoload (gnu packages terminals) (python-pyte)
+  #:autoload (gnu packages texinfo) (texinfo)
+  #:autoload (gnu packages time) (python-pytz)
+  #:autoload (gnu packages tls) (openssl gnutls)
+  #:autoload (gnu packages version-control) (git)
+  #:autoload (gnu packages web) (jq perl-http-tiny perl-io-socket-ssl)
+  #:autoload (gnu packages xdisorg) (libdrm scrot wmctrl)
+  #:autoload (gnu packages xml) (libxml2 python-xmltodict)
+  #:autoload (gnu packages xorg)
+  (libevdev libpciaccess libx11 perl-x11-protocol perl-x11-protocol-other
+            xdpyinfo xprop xrandr xterm))
 
 ;; This package uses su instead of sudo (because of SpaceFM).
 (define-public ktsuss
-- 
2.37.2